{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/account.service.moc.ts","webpack:///./src/app/account.service.ts","webpack:///./src/app/alert-yesno.directive.ts.AlertYesNoDirective.html","webpack:///./src/app/alert-yesno.directive.ts","webpack:///./src/app/alert.directive.ts.AlertDirective.html","webpack:///./src/app/alert.directive.ts","webpack:///./src/app/alert.ts","webpack:///./src/app/app-reload/app-reload.directive.ts","webpack:///./src/app/app-reload/idle-base.ts","webpack:///./src/app/app-reload/idle.ts","webpack:///./src/app/app.component.ts.AppComponent.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.service.ts","webpack:///./src/app/app.validators.ts","webpack:///./src/app/auth.ts","webpack:///./src/app/catchall.component.ts.CatchAllComponent.html","webpack:///./src/app/catchall.component.ts","webpack:///./src/app/config.ts","webpack:///./src/app/dashboard.component.ts.DashboardComponent.html","webpack:///./src/app/dashboard.component.ts","webpack:///./src/app/date_helper.ts","webpack:///./src/app/district.service.moc.ts","webpack:///./src/app/district.service.ts","webpack:///./src/app/district_user.ts","webpack:///./src/app/elapsed.ts","webpack:///./src/app/footer.component.ts.FooterComponent.html","webpack:///./src/app/footer.component.ts","webpack:///./src/app/http.service.ts","webpack:///./src/app/invite_district_user.ts","webpack:///./src/app/login.component.ts.LoginComponent.html","webpack:///./src/app/login.component.ts","webpack:///./src/app/oauth-token-request.ts","webpack:///./src/app/oauth-token.ts","webpack:///./src/app/oauth_response.ts","webpack:///./src/app/off_click.directive.ts","webpack:///./src/app/reports.component.ts.ReportsComponent.html","webpack:///./src/app/reports.component.ts","webpack:///./src/app/reports/activity_report.component.ts.ActivityReportComponent.html","webpack:///./src/app/reports/activity_report.component.ts","webpack:///./src/app/reports/activity_report_card_view.component.ts.ActivityReportCardViewComponent.html","webpack:///./src/app/reports/activity_report_card_view.component.ts","webpack:///./src/app/reports/activity_report_csv.ts","webpack:///./src/app/reports/activity_report_csv_request.ts","webpack:///./src/app/reports/activity_report_data_source.ts","webpack:///./src/app/reports/activity_report_data_source_preloaded.ts","webpack:///./src/app/reports/activity_report_data_source_preloaded_reply.ts","webpack:///./src/app/reports/activity_report_data_source_reply.ts","webpack:///./src/app/reports/activity_report_data_source_rfiduser.ts","webpack:///./src/app/reports/activity_report_data_source_rfiduser_reply.ts","webpack:///./src/app/reports/activity_report_data_source_student.ts","webpack:///./src/app/reports/activity_report_data_source_student_contact.ts","webpack:///./src/app/reports/activity_report_data_source_student_contact_reply.ts","webpack:///./src/app/reports/activity_report_data_source_student_reply.ts","webpack:///./src/app/reports/activity_report_export_csv_worker_status_request.ts","webpack:///./src/app/reports/activity_report_export_pdf_worker_status_request.ts","webpack:///./src/app/reports/activity_report_filter.component.ts.ActivityReportFilterViewComponent.html","webpack:///./src/app/reports/activity_report_filter.component.ts","webpack:///./src/app/reports/activity_report_filter.ts","webpack:///./src/app/reports/activity_report_pdf.ts","webpack:///./src/app/reports/activity_report_pdf_request.ts","webpack:///./src/app/reports/activity_report_row.ts","webpack:///./src/app/reports/activity_report_table_view.component.ts.ActivityReportTableViewComponent.html","webpack:///./src/app/reports/activity_report_table_view.component.ts","webpack:///./src/app/reports/find_activity_report.ts","webpack:///./src/app/school_access.component.ts.SchoolAccessComponent.html","webpack:///./src/app/school_access.component.ts","webpack:///./src/app/settings/account_association.ts","webpack:///./src/app/settings/account_association_batch.ts","webpack:///./src/app/settings/association.component.ts.AssociationComponent.html","webpack:///./src/app/settings/association.component.ts","webpack:///./src/app/settings/badge.component.ts.BadgeComponent.html","webpack:///./src/app/settings/badge.component.ts","webpack:///./src/app/settings/badge.ts","webpack:///./src/app/settings/badge_list.component.ts.BadgeListComponent.html","webpack:///./src/app/settings/badge_list.component.ts","webpack:///./src/app/settings/find_badge.ts","webpack:///./src/app/settings/find_school_group.ts","webpack:///./src/app/settings/nogo-enhance-export-csv.ts","webpack:///./src/app/settings/nogo-enhance-export.component.ts.NoGoEnhanceExportComponent.html","webpack:///./src/app/settings/nogo-enhance-export.component.ts","webpack:///./src/app/settings/nogo-enhance-files.component.ts.NoGoEnhanceFilesComponent.html","webpack:///./src/app/settings/nogo-enhance-files.component.ts","webpack:///./src/app/settings/nogo-enhance-find.ts","webpack:///./src/app/settings/nogo-enhance-import.component.ts.NoGoEnhanceImportComponent.html","webpack:///./src/app/settings/nogo-enhance-import.component.ts","webpack:///./src/app/settings/nogo-enhance-list.component.ts.NoGoEnhanceListComponent.html","webpack:///./src/app/settings/nogo-enhance-list.component.ts","webpack:///./src/app/settings/nogo-enhance-request.ts","webpack:///./src/app/settings/nogo-enhance-text-search.ts","webpack:///./src/app/settings/nogo-enhance-view.ts","webpack:///./src/app/settings/nogo-enhance-worker-status-request.ts","webpack:///./src/app/settings/nogo-enhance.component.ts.NoGoEnhanceComponent.html","webpack:///./src/app/settings/nogo-enhance.component.ts","webpack:///./src/app/settings/nogo-enhance.ts","webpack:///./src/app/settings/preloaded.component.ts.PreloadedComponent.html","webpack:///./src/app/settings/preloaded.component.ts","webpack:///./src/app/settings/preloaded.ts","webpack:///./src/app/settings/preloaded_category.ts","webpack:///./src/app/settings/preloaded_category_export.component.ts.PreloadedCategoryExportComponent.html","webpack:///./src/app/settings/preloaded_category_export.component.ts","webpack:///./src/app/settings/preloaded_category_export.ts","webpack:///./src/app/settings/preloaded_category_find.ts","webpack:///./src/app/settings/preloaded_category_import.component.ts.PreloadedCategoryImportComponent.html","webpack:///./src/app/settings/preloaded_category_import.component.ts","webpack:///./src/app/settings/preloaded_category_list.component.ts.PreloadedCategoryListComponent.html","webpack:///./src/app/settings/preloaded_category_list.component.ts","webpack:///./src/app/settings/preloaded_category_request.ts","webpack:///./src/app/settings/preloaded_category_text_search.ts","webpack:///./src/app/settings/preloaded_category_view.ts","webpack:///./src/app/settings/preloaded_category_worker_status_request.ts","webpack:///./src/app/settings/preloaded_export.component.ts.PreloadedExportComponent.html","webpack:///./src/app/settings/preloaded_export.component.ts","webpack:///./src/app/settings/preloaded_export.ts","webpack:///./src/app/settings/preloaded_find.ts","webpack:///./src/app/settings/preloaded_import.component.ts.PreloadedImportComponent.html","webpack:///./src/app/settings/preloaded_import.component.ts","webpack:///./src/app/settings/preloaded_list.component.ts.PreloadedListComponent.html","webpack:///./src/app/settings/preloaded_list.component.ts","webpack:///./src/app/settings/preloaded_request.ts","webpack:///./src/app/settings/preloaded_text_search.ts","webpack:///./src/app/settings/preloaded_view.ts","webpack:///./src/app/settings/preloaded_worker_status_request.ts","webpack:///./src/app/settings/rfid_users.component.ts.RfidUsersComponent.html","webpack:///./src/app/settings/rfid_users.component.ts","webpack:///./src/app/settings/rfid_users.ts","webpack:///./src/app/settings/rfid_users_export.component.ts.RfidUsersExportComponent.html","webpack:///./src/app/settings/rfid_users_export.component.ts","webpack:///./src/app/settings/rfid_users_export.ts","webpack:///./src/app/settings/rfid_users_find.ts","webpack:///./src/app/settings/rfid_users_import.component.ts.RfidUsersImportComponent.html","webpack:///./src/app/settings/rfid_users_import.component.ts","webpack:///./src/app/settings/rfid_users_list.component.ts.RfidUsersListComponent.html","webpack:///./src/app/settings/rfid_users_list.component.ts","webpack:///./src/app/settings/rfid_users_request.ts","webpack:///./src/app/settings/rfid_users_text_search.ts","webpack:///./src/app/settings/rfid_users_view.ts","webpack:///./src/app/settings/rfid_users_worker_request.ts","webpack:///./src/app/settings/school_group v2.ts","webpack:///./src/app/settings/school_group.component.ts.SchoolGroupComponent.html","webpack:///./src/app/settings/school_group.component.ts","webpack:///./src/app/settings/school_group.ts","webpack:///./src/app/settings/school_group_account_org.ts","webpack:///./src/app/settings/school_group_list.component.ts.SchoolGroupListComponent.html","webpack:///./src/app/settings/school_group_list.component.ts","webpack:///./src/app/settings/settings.component.ts.SettingsComponent.html","webpack:///./src/app/settings/settings.component.ts","webpack:///./src/app/shared/mime-types.ts","webpack:///./src/app/strings.ts","webpack:///./src/app/subscription.component.ts.SubscriptionComponent.html","webpack:///./src/app/subscription.component.ts","webpack:///./src/app/subscription.ts","webpack:///./src/app/subscription_registration_url.ts","webpack:///./src/app/title.ts","webpack:///./src/app/token.ts","webpack:///./src/app/token_helper.ts","webpack:///./src/app/truncate.pipe.ts","webpack:///./src/app/us-states.ts","webpack:///./src/app/user.ts","webpack:///./src/app/user_management.component.ts.UserManagementComponent.html","webpack:///./src/app/user_management.component.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts","webpack:///./src/polyfills.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","/// \nimport { Injectable, Injector } from '@angular/core';\nimport { Http, Headers } from '@angular/http';\nimport { Observable , Observer } from 'rxjs';\nimport { Token } from './token';\nimport { TokenHelper } from './token_helper';\nimport { Config } from './config';\nimport { User } from './user';\nimport { OAuthResponse } from './oauth_response';\n\n@Injectable()\nexport class AccountServiceMoc {\n\tuser: User;\n\tth: TokenHelper;\n\terrConn: string;\n\tuserKey: string = 'user';\n\ttimeout: number = 1000; //1 sec\n\tretry: number = 3; //max retry\n\tpublic dateNowFunc: any;\n\n\tconstructor(private config: Config, private http: Http) {\n\t\tthis.th = new TokenHelper();\n\t\tthis.errConn = 'There is an error when communicating with a server, please try again later.';\n\t\tthis.dateNowFunc = () => { return new Date(); };\n\t\tif (!validateToken()) {\n\t\t\tthis.setToken(new Token({\n\t\t\t\taccessToken: 'Code',\n\t\t\t\tscope: 'all',\n\t\t\t\ttokenType: 'Bearer',\n\t\t\t\tstate: 'dashboard',\n\t\t\t\texpiresIn: 50000,\n\t\t\t\texpiresAt: this.th.getExpiresAt(50000),\n\t\t\t\trefreshToken: 'refresh',\n\t\t\t}));\n\t\t}\n\t}\n\n\tgetUserProfileApi(): Observable {\n\t\tlet us = new User();\n\n\t\tus.firstName = 'ben';\n\t\tus.lastName = 'kolenovic';\n\t\tus.timeZone = 'tzone';\n\t\tus.email = 'email@email.com';\n\t\tus.username = 'username';\n\t\tus.userId = '12345';\n\t\tus.phoneNumber = '8009008888';\n\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(us);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tgetUser(): Observable {\n\t\tif (localStorage.getItem(this.userKey) === null) {\n\t\t\treturn null\n\t\t}\n\t\treturn JSON.parse(localStorage.getItem(this.userKey));\n\t}\n\n\tsetUser(user: User) {\n\t\tlocalStorage.setItem(this.userKey, JSON.stringify(user));\n\t}\n\n\tsetToken(tk: Token) {\n\t\tthis.th.setToken(this.config.tokenName, tk);\n\t}\n\n\toauthLogin(ar: OAuthResponse) {\n\t\tar.expiresAt = this.th.getExpiresAt(ar.expiresIn);\n\t\tthis.th.setToken(this.config.tokenName, ar.getToken());\n\t\treturn true;\n\t}\n\n\tgetError(err: any): Error {\n\t\tvar er: any;\n\t\tvar msg = this.errConn;\n\t\tif (typeof (err.json) === 'function') {\n\t\t\ter = err.json();\n\t\t\tif (er.message != null && er.message != null && er.message != '') {\n\t\t\t\tmsg = er.message;\n\t\t\t} else {\n\t\t\t\tconsole.log(err);\n\t\t\t}\n\t\t\treturn new Error(msg);\n\t\t} else if (err instanceof Error) {\n\t\t\treturn err;\n\t\t} else {\n\t\t\tconsole.log(err);\n\t\t}\n\t}\n\n\tgetToken(): Token {\n\t\treturn this.th.getToken(this.config.tokenName);\n\t}\n\n\tlogout() {\n\t\twindow.location.href = this.config.logoutUrl();\n\t}\n\n\tremoveLocalStorage() {\n\t\tlocalStorage.removeItem(this.userKey);\n\t\tthis.th.removeToken(this.config.tokenName);\n\t}\n\n\tlogoutWithMsg(msg: string) {\n\t\tthis.th.removeToken(this.config.tokenName);\n\t\twindow.location.href = this.config.loginUrl() + 'msg=' + encodeURI(msg);\n\t}\n}\n\nexport function validateToken(tokenName?: string, token?: Token) {\n\tvar tname: string = tokenName || 'token';\n\tvar t: Token;\n\tif (token) {\n\t\tt = token;\n\t} else {\n\t\tif (localStorage.getItem(tname) === null) {\n\t\t\treturn false\n\t\t}\n\t\tlet data = JSON.parse(localStorage.getItem(tname));\n\t\tt = new Token(data);\n\t}\n\tvar tokenHelper = new TokenHelper();\n\tif (!t || tokenHelper.isTokenExpired(t)) {\n\t\tconsole.log('token is expired');\n\t\treturn false\n\t} else {\n\t\treturn true\n\t}\n}\n","\nimport {throwError as observableThrowError, Observable } from 'rxjs';\n/// \nimport { Injectable } from '@angular/core';\nimport { Http, Headers } from '@angular/http';\nimport { Token } from './token';\nimport { TokenHelper } from './token_helper';\nimport { Config } from './config';\nimport { User } from './user';\nimport { OAuthResponse } from './oauth_response';\nimport { environment } from \"../environments/environment\";\nimport { AccountServiceMoc } from \"./account.service.moc\";\nimport 'rxjs/add/operator/map';\nimport 'rxjs/add/operator/retry';\nimport 'rxjs/add/operator/timeout'\nimport 'rxjs/add/operator/catch';\nimport 'rxjs/add/operator/retryWhen';\nimport 'rxjs/add/operator/delay';\nimport 'rxjs/add/operator/take';\nimport 'rxjs/add/operator/concat';\n\n@Injectable()\nexport class Account {\n\tth: TokenHelper;\n\terrConn: string;\n\tuserKey: string = 'user';\n\ttimeout: number = 1000; //1 sec\n\tretry: number = 3; //max retry\n\tpublic dateNowFunc: any;\n\tdelay: number = 3000; //max delay after retry\n\n\tconstructor(private config: Config, private http: Http) {\n\t\tthis.th = new TokenHelper();\n\t\tthis.errConn = 'There is an error when communicating with a server, please try again later.';\n\t\tthis.dateNowFunc = () => { return new Date() };\n\t}\n\n\tsetToken(tk: Token) {\n\t\tthis.th.setToken(this.config.tokenName, tk);\n\t}\n\n\tgetUserProfileApi(): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.get(this.config.authApiUrl + '/user/profile', { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tlet data = resp.json()\n\t\t\t\t\tlet us = new User();\n\t\t\t\t\tus.firstName = data.firstName;\n\t\t\t\t\tus.lastName = data.lastName;\n\t\t\t\t\tus.timeZone = data.timeZone;\n\t\t\t\t\tus.email = data.email;\n\t\t\t\t\tus.username = data.username;\n\t\t\t\t\tus.userId = data.userId;\n\t\t\t\t\tus.phoneNumber = data.phoneNumber;\n\t\t\t\t\treturn us;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tgetUser(): User {\n\t\tif (localStorage.getItem(this.userKey) === null) {\n\t\t\treturn null\n\t\t}\n\t\treturn JSON.parse(localStorage.getItem(this.userKey));\n\t}\n\n\tsetUser(user: User) {\n\t\tlocalStorage.setItem(this.userKey, JSON.stringify(user));\n\t}\n\n\toauthLogin(ar: OAuthResponse) {\n\t\tar.expiresAt = this.th.getExpiresAt(ar.expiresIn);\n\t\tthis.th.setToken(this.config.tokenName, ar.getToken());\n\t\treturn true;\n\t}\n\n\tgetError(err: any): Error {\n\t\tvar er: any;\n\t\tvar msg = this.errConn;\n\t\tif (typeof (err.json) === 'function') {\n\t\t\ter = err.json();\n\t\t\tif (er.message != null && er.message != null && er.message != '') {\n\t\t\t\tmsg = er.message;\n\t\t\t} else {\n\t\t\t\tconsole.log(err);\n\t\t\t}\n\t\t\treturn new Error(msg);\n\t\t} else if (err instanceof Error) {\n\t\t\treturn err;\n\t\t} else {\n\t\t\tconsole.log(err);\n\t\t}\n\t}\n\n\tgetToken() {\n\t\treturn this.th.getToken(this.config.tokenName);\n\t}\n\n\tlogout() {\n\t\twindow.location.href = this.config.logoutUrl();\n\t}\n\n\tremoveLocalStorage() {\n\t\tlocalStorage.removeItem(this.userKey);\n\t\tthis.th.removeToken(this.config.tokenName);\n\t}\n\n\tlogoutWithMsg(msg: string) {\n\t\tthis.th.removeToken(this.config.tokenName);\n\t\twindow.location.href = this.config.loginUrl() + 'msg=' + encodeURI(msg);\n\t}\n\n\thttpRetry(o: Observable): Observable {\n\t\treturn o\n\t\t\t.flatMap((error: any) => {\n\t\t\t\treturn Observable.of(error).delay(this.delay);\n\t\t\t})\n\t\t\t.take(this.retry)\n\t\t\t.concat(Observable.throw(this.getError(o)));\n\t}\n}\n\nexport function validateToken(tokenName?: string, token?: Token) {\n\tvar tname: string = tokenName || 'token';\n\tvar t: Token;\n\tif (token) {\n\t\tt = token;\n\t} else {\n\t\tif (localStorage.getItem(tname) === null) {\n\t\t\treturn false\n\t\t}\n\t\tlet data = JSON.parse(localStorage.getItem(tname));\n\t\tt = new Token(data);\n\t}\n\tvar tokenHelper = new TokenHelper();\n\tif (!t || tokenHelper.isTokenExpired(t)) {\n\t\tconsole.log('token is expired');\n\t\treturn false\n\t} else {\n\t\treturn true\n\t}\n}\n\nexport function accountServiceFactory(\n\tconfig: Config,\n\thttp: Http\n) {\n\treturn (environment.isMoc) ? new AccountServiceMoc(config, http) : new Account(config, http);\n}\n","\n\t
\n\t\t\n\t\t\n\t\tYes | No\n\t\t{{msg.msg}}\n\t
","import { EventEmitter, Output, Component, Input, ViewContainerRef, Compiler } from '@angular/core';\nimport { Alert } from './alert';\n\n@Component({\n\tselector: 'alert-yesno',\n\ttemplate: `\n\t
\n\t\t\n\t\t\n\t\tYes | No\n\t\t{{msg.msg}}\n\t
`\n})\n\nexport class AlertYesNoDirective {\n\t@Input('alert') msg: Alert;\n\t@Output() respond: EventEmitter = new EventEmitter();\n\n\tconstructor(private compiler: Compiler) {\n\t\tif (this.msg == null) {\n\t\t\tthis.msg = new Alert();\n\t\t}\n\t}\n\n\tyes() {\n\t\tthis.respond.emit('yes');\n\t}\n\n\tno() {\n\t\tthis.respond.emit('no');\n\t}\n}\n","\n\t
\n\t\t\t\n\t\t\n\t\t{{msg.msg}}\n\t
","import { Component, Input } from '@angular/core';\nimport { Alert } from './alert';\n\n@Component({\n\tselector: 'alert',\n\ttemplate: `\n\t
\n\t\t\t\n\t\t\n\t\t{{msg.msg}}\n\t
`\n})\n\nexport class AlertDirective {\n\t@Input('alert') msg: Alert;\n\tconstructor() {\n\t\tif (this.msg == null) {\n\t\t\tthis.msg = new Alert();\n\t\t}\n\t}\n}\n","export class Alert {\n msg: string;\n msgType: string;\n isHTML: boolean\n\n constructor() {\n this.msg = '';\n this.msgType = '';\n }\n\n success(msg: string) {\n this.msg = msg;\n this.msgType = 'success';\n this.isHTML = false;\n }\n\n successHtml(html: string) {\n this.msg = html;\n this.msgType = 'success';\n this.isHTML = true;\n }\n\n info(msg: string) {\n this.msg = msg;\n this.msgType = 'info';\n this.isHTML = false;\n }\n\n infoHtml(html: string) {\n this.msg = html;\n this.msgType = 'info';\n this.isHTML = true;\n }\n\n error(msg: string) {\n this.msg = msg;\n this.msgType = 'error';\n this.isHTML = false;\n }\n\n warning(msg: string) {\n this.msg = msg;\n this.msgType = 'warning';\n this.isHTML = false;\n }\n\n warningHtml(msg: string) {\n this.msg = msg;\n this.msgType = 'warning';\n this.isHTML = true;\n }\n\n toString() {\n return this.msg;\n }\n\n errorHtml(html: string) {\n this.msg = html;\n this.msgType = 'error';\n this.isHTML = true;\n }\n\n successHTML(html: string) {\n this.msg = html;\n this.msgType = 'success';\n this.isHTML = true;\n }\n\n close() {\n this.msg = '';\n }\n}\n","import { Component, EventEmitter, Input, Output, OnDestroy, OnInit } from '@angular/core';\nimport { Idle } from './idle';\nimport { Http } from '@angular/http';\nimport { Headers } from '@angular/http';\n\nimport { Observable } from 'rxjs';\nimport 'rxjs/add/observable/of';\nimport 'rxjs/add/operator/do';\n\n\n@Component({\n\tselector: 'app-reload',\n\ttemplate: '',\n})\n\nexport class AppReloadDirective implements OnInit, OnDestroy {\n\t@Input() maxIdle: string;\n\t@Input() forceTimeout: string;\n\t@Output() onChange: EventEmitter = new EventEmitter();\n\n\tprivate idle: Idle;\n\tprivate timeout: any;\n\n\tdelay: number = 3000; //max delay after retry\n\n\tconstructor(private http: Http) {\n\t}\n\n\tngOnInit() {\n\t\tif (!this.maxIdle) {\n\t\t\tthis.maxIdle = (60 * 5).toString() // default 5min\n\t\t}\n\t\tif (!this.forceTimeout) {\n\t\t\tthis.forceTimeout = (1000 * 60 * 60 * 5).toString() // default 5hour;\n\t\t}\n\n\t\tthis.idle = new Idle()\n\t\t\t.whenNotInteractive()\n\t\t\t.within(parseInt(this.maxIdle), 1000)\n\t\t\t.do(() => {\n\n\t\t\t\tthis.doAppVersion();\n\n\t\t\t\tthis.idle.restart();\n\n\t\t\t\tthis.startForceTimeout();\n\t\t\t})\n\t\t\t.start();\n\n\t\tconsole.log(this.forceTimeout);\n\t\tthis.startForceTimeout();\n\t}\n\n\tngOnDestroy() {\n\t\tthis.idle.stop();\n\t\tthis.removeForceTimeout();\n\t}\n\n\tremoveForceTimeout() {\n\t\tclearTimeout(this.timeout);\n\t}\n\n\tstartForceTimeout() {\n\t\tthis.removeForceTimeout();\n\n\t\tlet t = parseInt(this.forceTimeout) * 1000\n\t\tthis.timeout = setTimeout(() => {\n\t\t\tconsole.log('force timeout', t);\n\n\t\t\tthis.doAppVersion();\n\n\t\t\tthis.startForceTimeout();\n\n\t\t}, t);\n\t}\n\n\tappVersion(): Observable {\n\t\tconsole.log('app version');\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\treturn this.http.get('/app-version.json', { headers: headers })\n\t\t\t.timeout(10000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().version;\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error('error when getting app-version.json');\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tdoAppVersion() {\n\n\t\tthis.appVersion()\n\t\t\t.catch(err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\treturn Observable.of('');\n\t\t\t})\n\t\t\t.do((v: string) => {\n\t\t\t\tif (v !== '') {\n\t\t\t\t\tthis.onChange.emit(v);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.subscribe(() => {\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t});\n\t}\n\n\thttpRetry(o: Observable): Observable {\n\t\treturn o\n\t\t\t.flatMap((error: any) => {\n\t\t\t\treturn Observable.of(error).delay(this.delay);\n\t\t\t})\n\t\t\t.take(5)\n\t\t\t.concat(Observable.throw({error: 'error when getting app-version.json'}));\n\t}\n}\n","export interface Interaction {\n\ttarget: EventTarget;\n\tevents: string[];\n}\n\nconst defaultDocumentEvents = [\n\t'click',\n\t'mousemove',\n\t'mouseenter',\n\t'keydown',\n\t'scroll',\n\t'touchstart',\n];\n\nexport abstract class Base {\n\n\tprotected abstract listenerAction: () => void;\n\tprotected abstract tick: () => void;\n\n\tprotected timer = 0;\n\tprotected intervalId: any;\n\n\tprotected interactions: Interaction[] = [];\n\tprotected timeout: number;\n\tprotected factor: number;\n\tprotected callback: () => void;\n\n\t/**\n\t * Sets time after which it's idle if no interaction occurs.\n\t *\n\t * @param factor amount of miliseconds `timeout` represents, default 60000 (a minute)\n\t */\n\tpublic within(timeout: number, factor = 60000): this {\n\t\tthis.timeout = timeout;\n\t\tthis.factor = factor;\n\t\treturn this;\n\t}\n\n\tpublic do(callback: () => void): this {\n\t\tthis.callback = callback;\n\t\treturn this;\n\t}\n\n\tpublic start(): this {\n\t\tif (this.interactions.length === 0) {\n\t\t\tthrow Error('There is no interaction to watch!');\n\t\t}\n\n\t\tthis.addListeners();\n\t\tthis.setInterval();\n\t\treturn this;\n\t}\n\n\tpublic stop(): this {\n\t\tthis.removeListeners();\n\t\tthis.clearInterval();\n\t\treturn this;\n\t}\n\n\tprotected addListeners(): void {\n\t\tfor (const interaction of this.interactions) {\n\t\t\tfor (const event of interaction.events) {\n\t\t\t\tinteraction.target.addEventListener(event, this.listenerAction);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected removeListeners(): void {\n\t\tfor (const interaction of this.interactions) {\n\t\t\tfor (const event of interaction.events) {\n\t\t\t\tinteraction.target.removeEventListener(event, this.listenerAction);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected clearInterval(): void {\n\t\tclearInterval(this.intervalId);\n\t}\n\n\tprotected setInterval(): void {\n\t\tthis.intervalId = setInterval(this.tick, this.factor);\n\t}\n\n\tprotected pushDefaultInteraction(): void {\n\t\tthis.interactions.push({\n\t\t\tevents: defaultDocumentEvents,\n\t\t\ttarget: document,\n\t\t});\n\t}\n\n\tprotected concatInteractions(interactions: Interaction[] | Interaction): void {\n\t\tthis.interactions = this.interactions\n\t\t\t.concat(interactions);\n\t}\n\n}\n","import { Base, Interaction } from './idle-base';\n\nexport class Idle extends Base {\n\n\tprotected repetitive = false;\n\n\t/**\n\t * @param interactions set of interactions which will prevent being idle\n\t */\n\tpublic whenNot(interactions: Interaction[] | Interaction): this {\n\t\tthis.concatInteractions(interactions);\n\t\treturn this;\n\t}\n\n\t/**\n\t * Adds default interactions to decide if user is not interacting with page.\n\t */\n\tpublic whenNotInteractive(): this {\n\t\tthis.pushDefaultInteraction();\n\t\treturn this;\n\t}\n\n\t/**\n\t * Repeat calling idle action for each timeout frame.\n\t *\n\t * - Does NOT repeat by default\n\t */\n\tpublic repeat(repeat = true): this {\n\t\tthis.repetitive = repeat;\n\t\treturn this;\n\t}\n\n\t/**\n\t * Restart away timer\n\t * incase of custom situations other than events on `EventTarget`\n\t */\n\tpublic restart(): this {\n\t\tthis.listenerAction();\n\t\treturn this;\n\t}\n\n\tprotected listenerAction = () => {\n\t\tthis.timer = 0;\n\t\tthis.clearInterval();\n\t\tthis.setInterval();\n\t}\n\n\tprotected tick = () => {\n\t\tthis.timer += 1;\n\t\tif (this.timer === this.timeout || (this.repetitive && this.timer % this.timeout === 0)) {\n\t\t\tthis.callback();\n\t\t}\n\t}\n\n}\n","\n\t
\n\t
\n\t\t\n\t\t\n\t\t\n\t
\n\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t Logout\n\t\t\t\t
\n\t\t\t\t \n\t\t\t\t\t\t{{userGreeting}}\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t {{dashboardTitle}}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t/ {{b.title}} {{b.title}} \n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t \n\t\t \n\t\t
\n\t
\n\t
\n ","/// \nimport { Component, OnInit, ChangeDetectorRef } from '@angular/core';\nimport { Router, RouterOutlet, } from '@angular/router';\nimport { AppTitle, Breadcrumb } from './title';\nimport { Account, validateToken } from './account.service';\nimport { DistrictService } from './district.service';\nimport { Config } from './config';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\nimport { Alert } from './alert';\nimport { environment } from '../environments/environment';\nimport { AppService } from './app.service';\nimport { elapsedDaysHoursMinutes } from './elapsed';\nimport { SubscriptionResponse } from './subscription';\n\n@Component({\n\tselector: 'district-app',\n\ttemplate: `\n\t
\n\t
\n\t\t\n\t\t\n\t\t\n\t
\n\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t Logout\n\t\t\t\t
\n\t\t\t\t \n\t\t\t\t\t\t{{userGreeting}}\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t {{dashboardTitle}}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t/ {{b.title}} {{b.title}} \n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t \n\t\t \n\t\t
\n\t
\n\t
\n `\n})\n\nexport class AppComponent implements OnInit {\n\tisUserToggled: boolean;\n\tisSidebarToggled: boolean;\n\ttoday: number;\n\tacctNumber: string;\n\tmsg: Alert;\n\thasAccess: boolean;\n\tappReloadMaxIdle: number;\n\tappReloadForceTimeout: number;\n\tcurrentAppVersion: string;\n\tappVersionTitle: string;\n\tbreadcrumbs: Breadcrumb[];\n\tuserGreeting: string;\n\tdashboardTitle: string;\n\taccLink: string;\n\tschoolsName: string;\n\tinterval: any;\n\tdaysWarningAboutToExpire = 30;\n\tisUsrNull: boolean;\n\n\tconstructor(\n\t\tpublic title: AppTitle,\n\t\tprivate account: Account,\n\t\tprivate config: Config,\n\t\tprivate dvc: DistrictService,\n\t\tprivate router: Router,\n\t\tangulartics2GoogleAnalytics: Angulartics2GoogleAnalytics,\n\t\tprivate app: AppService,\n\t\tprivate cdref: ChangeDetectorRef,\n\t) {\n\t\tthis.msg = new Alert();\n\t\tthis.isUserToggled = false;\n\t\tthis.isSidebarToggled = true;\n\t\tthis.today = Date.now();\n\t\tthis.clickedOutside = this.clickedOutside.bind(this);\n\t\tthis.hasAccess = true;\n\t\tthis.currentAppVersion = environment.version;\n\t\tthis.appReloadMaxIdle = (60 * 5); // 5 min\n\t\tthis.appReloadForceTimeout = (1000 * 60 * 60 * 12); // 12 hours\n\t\tthis.appVersionTitle = `App Version: ${this.currentAppVersion}`;\n\t\tthis.breadcrumbs = [];\n\t\tthis.userGreeting = '';\n\t\tthis.dashboardTitle = '';\n\t\tthis.accLink = '';\n\t\tthis.schoolsName = '';\n\t\tangulartics2GoogleAnalytics.startTracking();\n\t\tthis.isUsrNull = true;\n\t}\n\n\tngOnInit() {\n\t\tif (window.innerWidth < 992) {\n\t\t\tthis.isSidebarToggled = false;\n\t\t}\n\t\tthis.title.titleEvent.subscribe(() => {\n\t\t\tthis.dashboardTitle = this.getDashboardTitle();\n\t\t\tthis.breadcrumbs = this.getBreadcrumbs();\n\t\t});\n\n\t\tthis.app.onLoadApp.subscribe((args) => {\n\t\t\tconsole.log('re-loading');\n\t\t\tthis.load();\n\t\t});\n\n\t\tthis.load();\n\t}\n\n\tload() {\n\n\t\tif (validateToken()) {\n\t\t\t// check existing user roles before loading default one\n\t\t\tlet ur = this.dvc.userRoles();\n\t\t\tif (ur == null) {\n\t\t\t\tthis.msg.error('There is an error when loading user\\'s roles, please try refreshing this page.');\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.acctNumber = ur.acctNumber;\n\t\t\tthis.userGreeting = this.getUserGreetings();\n\n\t\t\t// remove interval if any\n\t\t\tif (this.interval) {\n\t\t\t\tclearInterval(this.interval);\n\t\t\t}\n\n\t\t\t// validate token every 10 sec\n\t\t\tthis.interval = setInterval(() => {\n\t\t\t\tif (!this.tokenValidation()) {\n\t\t\t\t\tclearInterval(this.interval);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}, 10000);\n\t\t\tthis.isUsrNull = false;\n\n\t\t\tthis.dvc.subscriptionApi(this.acctNumber).subscribe((urs: SubscriptionResponse) => {\n\t\t\t\tlet remainder = elapsedDaysHoursMinutes(new Date(), urs.accountlicense.expirationDateValue);\n\t\t\t\tif (remainder.days < 0) {\n\t\t\t\t\tthis.msg.warning(`Your license has expired. Please go to subscription page for more details.`);\n\t\t\t\t\tif (urs.accountlicense.code ==='invalid account license'){\n\t\t\t\t\t\tthis.msg.error(this.dvc.getUserError(Error(urs.accountlicense.code)))\n\t\t\t\t\t}\n\t\t\t\t} else if (remainder.days <= this.daysWarningAboutToExpire) {\n\t\t\t\t\tthis.msg.warning(`Your license is about te expire in ${remainder.days} days. Please go to subscription page for more details.`);\n\t\t\t\t}\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tchangeRoute() {\n\t\tthis.schoolsName = this.schoolName();\n\t\tthis.accLink = this.accountLink();\n\t}\n\n\ttokenValidation(): boolean {\n\t\tlet t = this.dvc.getToken();\n\t\t// no need to display user message about token expiration in case of refreshToken being present\n\t\tif (t.refreshToken && t.refreshToken != '') {\n\t\t\treturn true;\n\t\t}\n\t\tif (!validateToken()) {\n\t\t\tvar c = 10;\n\t\t\t// current url is passed to login component for auth.ts to catch and send within redirect_uri for returning the user to the current page after login\n\t\t\tvar url = encodeURIComponent(this.router.url);\n\t\t\tvar interval = setInterval(() => {\n\t\t\t\tthis.msg.warningHtml(`This session has expired, please wait while redirecting you to login page in ${c}.`);\n\t\t\t\tc--;\n\t\t\t\tif (c < 0) {\n\t\t\t\t\tclearInterval(interval);\n\t\t\t\t\tthis.router.navigate(['/login', { queryParams: { 'gotopage': url } }])\n\t\t\t\t}\n\t\t\t}, 1000);\n\t\t\treturn false;\n\t\t}\n\t\treturn true\n\t}\n\n\tclickedOutside() {\n\t\tthis.isUserToggled = false;\n\t}\n\n\ttoggleSidebar() {\n\t\tthis.isSidebarToggled = !this.isSidebarToggled;\n\t}\n\n\ttoggleUser() {\n\t\tthis.isUserToggled = !this.isUserToggled;\n\t}\n\n\tgetUserGreetings() {\n\t\tlet user = this.account.getUser();\n\t\tif (user == null) {\n\t\t\treturn \"Hi\";\n\t\t}\n\t\tif (!user.firstName){\n\t\t\treturn 'Hi ' + user.username;\n\t\t}\n\t\treturn 'Hi ' + user.firstName;\n\t}\n\n\tgetDashboardTitle() {\n\t\treturn this.title.getDashboardTitle();\n\t}\n\n\tgetDashboardNav() {\n\t\treturn this.title.getDashboardNav();\n\t}\n\n\tgetBreadcrumbs() {\n\t\treturn this.title.getBreadcrumbsPrint();\n\t}\n\n\taccountLink() {\n\t\treturn this.config.authAppUrl + '/dashboard/profile'\n\t}\n\n\tlogout() {\n\t\tthis.account.removeLocalStorage();\n\t\tthis.dvc.removeLocalStorage();\n\t\tthis.account.logout();\n\t}\n\n\tschoolName() {\n\t\tlet s = this.dvc.userRoles();\n\t\tif (s != null) {\n\t\t\treturn s.schoolName;\n\t\t}\n\t\treturn 'NA';\n\t}\n\n\tshowMenu() {\n\t\tif (this.account.getUser() != null && this.dvc.userRoles() != null) {\n\t\t\tthis.acctNumber = this.dvc.userRoles().acctNumber;\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tappReload(version: string) {\n\t\tif (this.currentAppVersion != version) {\n\t\t\tconsole.log('version:', version);\n\t\t\twindow.location.reload(true);\n\t\t}\n\t}\n\n\tngAfterContentChecked() {\n\t\tthis.cdref.detectChanges();\n\t}\n\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule, Injector } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { Http, HttpModule } from '@angular/http';\nimport { LocationStrategy, HashLocationStrategy } from '@angular/common';\nimport { Config, loadConfig } from './config';\nimport { routing } from \"./app.routing\";\nimport { AppComponent } from './app.component';\nimport { DashboardComponent } from './dashboard.component';\nimport { FooterComponent } from './footer.component';\nimport { LoginComponent } from './login.component';\nimport { UserManagementComponent } from './user_management.component';\nimport { SchoolAccessComponent } from './school_access.component';\nimport { SubscriptionComponent } from './subscription.component';\nimport { AppTitle } from './title';\nimport { AlertDirective } from './alert.directive';\nimport { OffClickDirective } from \"./off_click.directive\";\nimport { Account, accountServiceFactory } from './account.service';\nimport { DistrictService, districtServiceFactory } from './district.service';\nimport { Auth } from './auth';\nimport { Angulartics2Module } from 'angulartics2';\nimport { CatchAllComponent } from './catchall.component';\nimport { TruncatePipe } from './truncate.pipe';\nimport { AppToggleComponent } from './app_toggle.component';\nimport { FileUploadModule } from 'ng2-file-upload';\nimport { AppImportComponent } from \"./app_import.component\";\nimport { AlertYesNoDirective } from './alert-yesno.directive';\nimport { HttpService, getHttpService } from './http.service';\nimport { RequestOptions, XHRBackend } from \"@angular/http\";\nimport { AppReloadDirective } from './app-reload/app-reload.directive';\nimport { AppService } from './app.service';\nimport { AssociationComponent } from './settings/association.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { NoGoEnhanceListComponent } from './settings/nogo-enhance-list.component';\nimport { NoGoEnhanceComponent } from './settings/nogo-enhance.component';\nimport { NoGoEnhanceImportComponent } from './settings/nogo-enhance-import.component';\nimport { NoGoEnhanceExportComponent } from './settings/nogo-enhance-export.component';\nimport { NoGoEnhanceFilesComponent } from './settings/nogo-enhance-files.component';\nimport { RfidUsersListComponent } from './settings/rfid_users_list.component';\nimport { RfidUsersComponent } from './settings/rfid_users.component';\nimport { RfidUsersImportComponent } from './settings/rfid_users_import.component';\nimport { RfidUsersExportComponent } from './settings/rfid_users_export.component';\nimport { PreloadedListComponent } from './settings/preloaded_list.component';\nimport { PreloadedComponent } from './settings/preloaded.component';\nimport { PreloadedImportComponent } from './settings/preloaded_import.component';\nimport { PreloadedCategoryListComponent } from './settings/preloaded_category_list.component';\nimport { PreloadedCategoryImportComponent } from './settings/preloaded_category_import.component';\nimport { PreloadedExportComponent } from \"./settings/preloaded_export.component\";\nimport { PreloadedCategoryExportComponent } from \"./settings/preloaded_category_export.component\";\nimport { SchoolGroupListComponent } from \"./settings/school_group_list.component\";\nimport { SchoolGroupComponent } from \"./settings/school_group.component\";\nimport {BadgeListComponent} from \"./settings/badge_list.component\";\nimport { BadgeComponent } from './settings/badge.component';\nimport { ReportsComponent } from './reports.component';\nimport { ActivityReportComponent } from './reports/activity_report.component';\nimport {ActivityReportCardViewComponent} from './reports/activity_report_card_view.component';\nimport {ActivityReportTableViewComponent} from './reports/activity_report_table_view.component';\nimport { ActivityReportFilterViewComponent } from './reports/activity_report_filter.component';\n\n@NgModule({\n\tdeclarations: [\n\t\tAppComponent,\n\t\tDashboardComponent,\n\t\tFooterComponent,\n\t\tLoginComponent,\n\t\tUserManagementComponent,\n\t\tSchoolAccessComponent,\n\t\tSubscriptionComponent,\n\t\tAlertDirective,\n\t\tOffClickDirective,\n\t\tCatchAllComponent,\n\t\tTruncatePipe,\n\t\tAppToggleComponent,\n\t\tAppImportComponent,\n\t\tAlertYesNoDirective,\n\t\tAppReloadDirective,\n\t\tAssociationComponent,\n\t\tSettingsComponent,\n\t\tNoGoEnhanceComponent,\n\t\tNoGoEnhanceListComponent,\n\t\tNoGoEnhanceImportComponent,\n\t\tNoGoEnhanceExportComponent,\n\t\tNoGoEnhanceFilesComponent,\n\t\tRfidUsersListComponent,\n\t\tRfidUsersComponent,\n\t\tRfidUsersImportComponent,\n\t\tRfidUsersExportComponent,\n\t\tPreloadedListComponent,\n\t\tPreloadedComponent,\n\t\tPreloadedImportComponent,\n\t\tPreloadedExportComponent,\n\t\tPreloadedCategoryListComponent,\n\t\tPreloadedCategoryImportComponent,\n\t\tPreloadedCategoryExportComponent,\n\t\tSchoolGroupListComponent,\n\t\tSchoolGroupComponent,\n\t\tBadgeListComponent,\n\t\tBadgeComponent,\n\t\tReportsComponent,\n\t\tActivityReportComponent,\n\t\tActivityReportCardViewComponent,\n\t\tActivityReportTableViewComponent,\n\t\tActivityReportFilterViewComponent,\n\t],\n\timports: [\n\t\tBrowserModule,\n\t\tFormsModule,\n\t\tHttpModule,\n\t\trouting,\n\t\tReactiveFormsModule,\n\t\tAngulartics2Module.forRoot(),\n\t\tFileUploadModule\n\t],\n\tproviders: [\n\t\tAppTitle,\n\t\t{ provide: LocationStrategy, useClass: HashLocationStrategy },\n\t\t{ provide: Account, useFactory: accountServiceFactory, deps: [Config, Http] },\n\t\t{ provide: DistrictService, useFactory: districtServiceFactory, deps: [HttpService, Account, Config] },\n\t\t{ provide: Config, useFactory: loadConfig },\n\t\t{ provide: HttpService, useFactory: getHttpService, deps: [XHRBackend, RequestOptions, Injector] },\n\t\tAuth,\n\t\tAppService,\n\t],\n\tbootstrap: [AppComponent]\n})\n\nexport class AppModule { }\n","import { EventEmitter, Injectable } from '@angular/core';\n\n\n\n@Injectable()\nexport class AppService {\n\t// use this service when you need to re-render app component\n\t// example if menu displays something from settigns or any other service you need to fire this event from that component\n\t// for more take a look at the source code of station-setup/new-station\n\t// pass arguments or commands\n\tonLoadApp: EventEmitter = new EventEmitter();\n\n}\n","/// \nimport { FormControl, Validators, FormGroup ,ValidatorFn} from '@angular/forms';\n\nexport class AppValidators {\n\n\n\tstatic email(c: FormControl): { [key: string]: boolean } {\n\t\tif (Helper.isPresent(Validators.required(c))) return null;\n\t\tif (!AppValidators.isEmail(c.value)) {\n\t\t\treturn { invalidEmail: true }\n\t\t}\n\t}\n\n\tstatic date(c: FormControl): { [key: string]: boolean } {\n\t\tif (Helper.isPresent(Validators.required(c))) return null;\n\t\tif (!AppValidators.isDate(c.value)) {\n\t\t\treturn { invalidDate: true }\n\t\t}\n\t}\n\n\tstatic number(c: FormControl): { [key: string]: boolean } {\n\t\tif (Helper.isPresent(Validators.required(c))) return null;\n\t\tif (!AppValidators.isNumber(c.value)) {\n\t\t\treturn { invalidNumber: true }\n\t\t}\n\t}\n\n\tstatic isEmail(email: string) {\n\t\tvar emailRegex = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;\n\t\treturn email.toLowerCase().match(emailRegex)\n\t}\n\n\tstatic isDate(date: string) {\n\t\tvar dateRegex = /^(?:(0[1-9]|1[012])[\\/.](0[1-9]|[12][0-9]|3[01])[\\/.](19|20)[0-9]{2})$/;\n\t\treturn date.match(dateRegex)\n\t}\n\n\tstatic isNumber(intStr: string) {\n\t\tvar intRegex = /^0$|^-?[1-9]\\d*(\\.\\d+)?$/;\n\t\treturn intStr.match(intRegex)\n\t}\n}\n\nclass Helper {\n\tstatic isPresent(obj: any): boolean {\n\t\treturn obj != null;\n }\n}\n\nexport function controlErrors(f: FormGroup, callback: any) {\n\tvar c: any;\n\tvar name: any;\n\tObject.keys(f.controls).forEach(name => {\n\t\tc = f.controls[name];\n\t\tif (!c.valid) {\n\t\t\tif (c.hasError('invalidEmail')) {\n\t\t\t\tcallback(c, name + ' has invalid email address.');\n\t\t\t} else if (c.hasError('required')) {\n\t\t\t\tcallback(c, name + ' is required.');\n\t\t\t} else if (c.hasError('minlength')) {\n\t\t\t\tlet v = c.errors['minlength'].requiredLength;\n\t\t\t\tcallback(c, `${name} min length is ${v}.`);\n\t\t\t} else if (c.hasError('invalidNumber')) {\n\t\t\t\tcallback(c, name + ' has invalid number, must be numeric (ex. -23, 23 or 23.10)');\n\t\t\t} else if (c.hasError('invalidDate')) {\n\t\t\t\tcallback(c, name + ' has invalid date, must be on format of MM/DD/YYYY (ex. 02/12/2016).');\n\t\t\t} else if (c.hasError('maxlength')) {\n\t\t\t\tlet v = c.errors['maxlength'].requiredLength;\n\t\t\t\tcallback(c, `${name} max length is ${v}.`);\n\t\t\t} else if (c.hasError('max')){\n\t\t\t\tlet v = c.errors['max']\n\t\t\t\tcallback(c, `${name} invalid number, max value is ${v.max}.`)\n\t\t\t} else if (c.hasError('min')){\n\t\t\t\tlet v = c.errors['min']\n\t\t\t\tcallback(c, `${name} invalid number, min value is ${v.min}.`)\n\t\t\t}\n\t\t}\n\t});\n}\n","import { Injectable } from '@angular/core';\nimport { Account, validateToken } from './account.service';\nimport {\n\tCanActivate, Router,\n\tActivatedRouteSnapshot,\n\tRouterStateSnapshot,\n\tCanActivateChild\n} from '@angular/router';\nimport { OAuthResponse } from './oauth_response';\nimport { Config } from './config';\nimport { DistrictService } from './district.service';\nimport { OAuthTokenRequest } from './oauth-token-request';\nimport { Observable } from 'rxjs';\n\nimport { TokenHelper } from './token_helper';\n\n\n@Injectable()\nexport class Auth implements CanActivate {\n\tpublic ar: OAuthResponse;\n\tconstructor(private router: Router, private account: Account, private config: Config, private district: DistrictService) { }\n\tcanActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\n\t\tlet path: string = window.location.href;\n\t\tif (path.indexOf(\"#access_token=\") === -1) {\n\t\t\tif (validateToken()) {\n\t\t\t\treturn Observable.of(true);\n\t\t\t}\n\t\t\tconsole.log('token invalid, redirecting to login page.');\n\n\t\t\tlet redirectLogin = () => {\n\n\t\t\t\tif (path.indexOf(\"#\") != -1) {\n\t\t\t\t\tlet baseUrl = path.substring(0, path.indexOf(\"#\"));\n\t\t\t\t\tlet gotopage = path.substr(path.indexOf(\"#\") + 1);\n\t\t\t\t\t// there are cases where gotopage query param is set on url\n\t\t\t\t\t// in this case we need to take that value else take the default url\n\t\t\t\t\tif (path.indexOf('gotopage=') != -1) {\n\t\t\t\t\t\tlet fg = this.parseQueryString(path.substr(path.indexOf('?') + 1));\n\t\t\t\t\t\tgotopage = fg['gotopage'];\n\t\t\t\t\t}\n\t\t\t\t\tgotopage = encodeURIComponent(gotopage);\n\t\t\t\t\twindow.location.href = this.config.loginUrl() + `?navigateUri=${gotopage}`;\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = this.config.loginUrl();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet t = this.account.getToken();\n\t\t\t// if refresh token is empty, ask user to re-login\n\t\t\t// refresh_token will be provided only when user has checked to stay signin\n\n\t\t\tif (!t || !t.refreshToken) {\n\t\t\t\tconsole.log('no refresh token');\n\t\t\t\tredirectLogin();\n\t\t\t\treturn Observable.of(false);\n\t\t\t}\n\n\t\t\t// try to get new token based on refresh token\n\t\t\t//\n\t\t\tlet oauthreq = new OAuthTokenRequest();\n\t\t\toauthreq.refreshToken = t.refreshToken;\n\t\t\treturn this.district.oauthTokenApi(oauthreq)\n\t\t\t\t.map(data => {\n\n\t\t\t\t\tlet th = new TokenHelper();\n\t\t\t\t\tt.accessToken = data.accessToken;\n\t\t\t\t\tt.refreshToken = data.refreshToken;\n\t\t\t\t\tt.tokenType = data.tokenType;\n\t\t\t\t\tt.expiresIn = data.expiresIn;\n\t\t\t\t\tt.expiresAt = th.getExpiresAt(data.expiresIn);\n\n\t\t\t\t\tthis.account.setToken(t);\n\t\t\t\t\treturn true;\n\t\t\t\t})\n\t\t\t\t.catch(err => {\n\t\t\t\t\tconsole.log(err)\n\t\t\t\t\tredirectLogin();\n\t\t\t\t\treturn Observable.of(false)\n\t\t\t\t});\n\n\t\t} else {\n\t\t\tlet fg = this.getFragment();\n\t\t\tthis.setToken(fg);\n\t\t\t// gotopage param is to navigate the user to specific page after it is login\n\t\t\tlet gotopage = fg['gotopage'];\n\t\t\tif (gotopage) {\n\t\t\t\t//gotopage = decodeURIComponent(gotopage);\n\t\t\t\tthis.config.saveGoToPage(gotopage);\n\t\t\t}\n\t\t\twindow.location.href = '/#/login';\n\t\t\t//this will stop angular accessing wrong page like #/access_token and insted of that it will change the url to /#/login\n\t\t\treturn Observable.of(false);\n\t\t}\n\t}\n\n\tcanActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\n\t\treturn this.canActivate(route, state);\n\t}\n\n\tsetToken(queryParam: any) {\n\t\tthis.ar = new OAuthResponse();\n\t\tthis.ar.accessToken = queryParam['access_token'];\n\t\tthis.ar.tokenType = queryParam['token_type'];\n\t\tthis.ar.state = queryParam['state'];\n\t\tthis.ar.scope = queryParam['scope'];\n\t\tthis.ar.expiresIn = parseInt(queryParam['expires_in']);\n\t\tif (queryParam['refresh_token']) {\n\t\t\tthis.ar.refreshToken = queryParam['refresh_token'];\n\t\t}\n\t\tthis.account.oauthLogin(this.ar);\n\t}\n\n\tgetFragment() {\n\t\tif (window.location.hash.indexOf(\"#\") === 0) {\n\t\t\treturn this.parseQueryString(window.location.hash.substr(1));\n\t\t} else {\n\t\t\treturn {};\n\t\t}\n\t};\n\n\tparseQueryString(queryString) {\n\t\tvar data = {}, pairs, pair, separatorIndex, escapedKey, escapedValue, key, value;\n\n\t\tif (queryString === null) {\n\t\t\treturn data;\n\t\t}\n\n\t\tpairs = queryString.split(\"&\");\n\n\t\tfor (var i = 0; i < pairs.length; i++) {\n\t\t\tpair = pairs[i];\n\t\t\tseparatorIndex = pair.indexOf(\"=\");\n\n\t\t\tif (separatorIndex === -1) {\n\t\t\t\tescapedKey = pair;\n\t\t\t\tescapedValue = null;\n\t\t\t} else {\n\t\t\t\tescapedKey = pair.substr(0, separatorIndex);\n\t\t\t\tescapedValue = pair.substr(separatorIndex + 1);\n\t\t\t}\n\n\t\t\tkey = decodeURIComponent(escapedKey);\n\t\t\tvalue = decodeURIComponent(escapedValue);\n\n\t\t\tif (key.substr(0, 1) === '/')\n\t\t\t\tkey = key.substr(1);\n\n\t\t\tdata[key] = value;\n\t\t}\n\n\t\treturn data;\n\t};\n}\n","
\n \n
","import { Component } from '@angular/core';\nimport { NavigationCancel, ActivatedRoute, Router, Routes, RouterOutlet, RouterModule } from '@angular/router';\nimport { AppTitle } from './title';\nimport { Alert } from './alert';\n\n@Component({\n selector: 'catchall',\n template:\n `
\n \n
`\n})\n\nexport class CatchAllComponent {\n public msg: Alert;\n\n constructor(private router: Router, private title: AppTitle) {\n this.msg = new Alert();\n title.setTitles({ title: 'Page not found', dashboard: 'Page not found', dashboardNav: '' });\n this.msg.error(`Page '${router.url}' could not be found, please use the menu for navigation or re-login.`);\n }\n}\n","import { environment } from '../environments/environment';\n\nexport class Config {\n\tauthApiUrl: string;\n\tauthAppUrl: string;\n\tdistrictApiUrl: string;\n\tpowerschoolAppUrl: string;\n\toneRosterAppUrl: string;\n\tclientId: string;\n\tresponseType: string;\n\tscope: string;\n\tstate: string;\n\ttokenName: string;\n\tconfig: any;\n\tidentityAppUrl: string;\n\n\tgotopageKey: string;\n\tconstructor(config?: any) {\n\t\tthis.config = config || {};\n\t\tthis.authApiUrl = this.config.authApiUrl || 'http://localhost:4000';\n\t\tthis.authAppUrl = this.config.authAppUrl || 'http://localhost:14000/#';\n\t\tthis.districtApiUrl = this.config.districtApiUrl || 'http://localhost:4001';\n\t\tthis.powerschoolAppUrl = this.config.powerschoolAppUrl || 'http://localhost:14200/#';\n\t\tthis.identityAppUrl = this.config.identityAppUrl || 'http://localhost:14200';\n\t\tthis.oneRosterAppUrl = this.config.oneRosterAppUrl || 'http://localhost:14010/#';\n\t\tthis.tokenName = this.config.tokenName || 'token';\n\t\tthis.clientId = this.config.clientId || 'ea2849e2-8e8c-487b-81e2-dd8bfb14e22e';\n\t\tthis.responseType = this.config.responseType || 'token';\n\t\tthis.scope = this.config.scope || 'all';\n\t\tthis.state = this.config.state || '/dashboard';\n\t\tthis.gotopageKey = 'gotopage';\n\t}\n\n\tloginUrl() {\n\t\treturn this.districtApiUrl + '/oauth2/login';\n\t}\n\n\tlogoutUrl() {\n\t\treturn this.districtApiUrl + '/oauth2/logout';\n\t}\n\n\tsaveGoToPage(path: string) {\n\t\tlocalStorage.setItem(this.gotopageKey, path);\n\t}\n\n\tgoToPage(): string {\n\t\treturn localStorage.getItem(this.gotopageKey);\n\t}\n\n\tremoveLocalStorage() {\n\t\tlocalStorage.removeItem(this.gotopageKey);\n\t}\n}\n\nexport function loadConfig(): Config {\n\tconst w = window || {}\n\t// check if config is loaded from config.js file, if not then load directly from environment\n\tif (w['__config']) {\n\t\tconst c = w['__config'] || {};\n\t\treturn new Config(c);\n\t}\n\n\treturn new Config({\n\t\tclientId: environment.clientId,\n\t\tauthApiUrl: environment.authApiUrl,\n\t\tauthAppUrl: environment.authAppUrl,\n\t\tdistrictApiUrl: environment.districtApiUrl,\n\t\tpowerschoolAppUrl: environment.powerschoolAppUrl,\n\t\toneRosterAppUrl: environment.oneRosterAppUrl,\n\t\tidentityAppUrl: environment.identityAppUrl,\n\t});\n}\n","\n\t
\n\t\t\n\t

dashboard

\n\t
\n ","/// \nimport { Component, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AppTitle } from './title';\nimport { Account } from './account.service';\nimport { Config } from './config';\nimport { DistrictService } from './district.service';\nimport { Alert } from './alert';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'dashboard',\n template: `\n\t
\n\t\t\n\t

dashboard

\n\t
\n `\n})\n\nexport class DashboardComponent implements OnDestroy {\n private subscription: Subscription;\n msg: Alert;\n acctNumber: string;\n\n constructor(private router: Router, private title: AppTitle, private account: Account, private activatedRoute: ActivatedRoute, private config: Config, private dvc: DistrictService) {\n this.msg = new Alert();\n title.setTitles({ title: 'Dashboard', dashboard: 'Dashboard', dashboardNav: 'Home' });\n\n this.subscription = activatedRoute.params.subscribe(\n (params) => this.acctNumber = params['acctNumber']\n )\n\n if (this.acctNumber != null) {\n dvc.validateAcctNumber(this.acctNumber)\n .subscribe(res => {\n }, err => {\n console.log(err);\n this.msg.error('There is an error when processing this request, please try again.');\n });\n }\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n}\n","//Parse date string as it is into Date object\n//This is used when date string has no timestamp even if there is Z (UTC) the actual date is without timestamp\nexport function rfc3339ToDate(strDate: any): Date {\n\tif (!strDate || strDate === '') {\n\t\treturn null;\n\t}\n\tif (typeof (strDate) !== 'string') {\n\t\treturn strDate;\n\t}\n\n\tlet dtstr = strDate.replace(/\\D/g, \" \");\n\tlet dtcomps = dtstr.split(\" \");\n\treturn new Date(\n\t\tparseInt(dtcomps[0]),\n\t\tparseInt(dtcomps[1]) - 1,\n\t\tparseInt(dtcomps[2]),\n\t\tparseInt(dtcomps[3]),\n\t\tparseInt(dtcomps[4]),\n\t\tparseInt(dtcomps[5]));\n}\n\nexport function slashDateToDate(d: string): Date {\n\tif (d && d.indexOf('/') != -1) {\n\t\tlet dp: string[] = d.split('/');\n\t\treturn new Date(parseInt(dp[2]), (parseInt(dp[0]) - 1), parseInt(dp[1]));\n\t}\n\treturn new Date(1, 1, 1);\n}\n\nexport function dateFormat(dt: Date, format: string): string {\n\tlet day = (\"0\" + dt.getDate()).slice(-2);\n\tlet month = (\"0\" + (dt.getMonth() + 1)).slice(-2);\n\tlet year = dt.getFullYear().toString();\n\tlet h = dt.getHours();\n\tlet ampm = (h % 12 || 12)\n\t\t+ ':' + (\"0\" + dt.getMinutes()).slice(-2)\n\t\t+ ' ' + (h < 12 ? 'A' : 'P') + 'M';\n\n\tswitch (format) {\n\t\tcase '01-02-2006 03:04 PM':\n\t\t\treturn `${month}-${day}-${year} ${ampm}`;\n\t\tcase '01/02/2006 03:04 PM':\n\t\t\treturn `${month}/${day}/${year} ${ampm}`;\n\t\tcase '01/02/2006':\n\t\t\treturn `${month}/${day}/${year}`;\n\n\t\tdefault:\n\t\t\treturn dt.toString();\n\t}\n}\n\nexport function isDateSet(d: Date): boolean {\n\tif (d && typeof (d) === \"object\" && d.getFullYear() > 1901) {\n\t\treturn true;\n\t}\n\treturn false;\n}\n","import { Injectable, Injector } from '@angular/core';\nimport { Account } from './account.service';\nimport { Config } from './config';\nimport { Observable, Observer } from 'rxjs';\nimport { UserRoles } from './user_roles';\nimport { DistrictUser } from './district_user';\nimport { InviteUser } from './invite_district_user';\nimport * as subscription from './subscription';\n\nimport { SubscriptionRegistrationURL } from './subscription_registration_url';\nimport { HttpService } from './http.service';\nimport { OAuthToken } from './oauth-token';\nimport { OAuthTokenRequest } from './oauth-token-request';\nimport { AssociateAccount } from './settings/account_association';\n\nimport { NoGoEnhance } from './settings/nogo-enhance';\nimport { NoGoEnhanceTextSearch } from './settings/nogo-enhance-text-search';\nimport { NoGoEnhanceRequest } from './settings/nogo-enhance-request';\nimport { NoGoEnhanceReply } from './settings/nogo-enhance-reply';\nimport { NoGoEnhanceExportCSVReply } from './settings/nogo-enhance-export-csv-reply';\nimport { NoGoEnhanceCount } from './settings/nogo-enhance-count';\nimport { NoGoEnhanceFind } from './settings/nogo-enhance-find';\nimport { NoGoEnhanceExportCSV } from './settings/nogo-enhance-export-csv';\nimport { NoGoEnhanceFileReply } from './settings/nogo-enhance-file-reply';\nimport { NoGoEnhanceWorkerStatus } from \"./settings/nogo-enhance-worker-status-request\";\nimport { NoGoEnhanceWorkerStatusReply } from \"./settings/nogo-enhance-worker-status\";\n\nimport { RfidUsersExportCSVReply } from './settings/rfid_users_export_csv_reply';\nimport { RfidUsersExport } from './settings/rfid_users_export'\nimport { RfidUsersReply } from './settings/rfid_users_reply'\nimport { RfidUsers } from './settings/rfid_users';\nimport { RfidUsersTextSearch } from './settings/rfid_users_text_search';\nimport { RfidUsersCount } from './settings/rfid_users_count';\nimport { RfidUsersFind } from './settings/rfid_users_find';\nimport { RfidUsersRequest } from './settings/rfid_users_request';\nimport { RfidUserListWorkerStatus } from './settings/rfid_users_worker_request';\nimport { RfidUserListWorkerStatusReply } from './settings/rfid_users_worker_status';\n\nimport { Preloaded } from './settings/preloaded';\nimport { PreloadedTextSearch } from './settings/preloaded_text_search';\nimport { PreloadedRequest } from './settings/preloaded_request';\nimport { PreloadedReply } from './settings/preloaded_reply';\nimport { PreloadedExportCSVReply } from './settings/preloaded_export_csv_reply';\nimport { PreloadedCount } from './settings/preloaded_count';\nimport { PreloadedFind } from \"./settings/preloaded_find\";\nimport { PreloadedExport } from \"./settings/preloaded_export\";\nimport { FindPreloadedCategory } from './settings/find_preloaded_category';\nimport { PreloadedCategory } from './settings/preloaded_category';\nimport { PreloadedCategoryTextSearch } from './settings/preloaded_category_text_search';\nimport { PreloadedCategoryRequest } from './settings/preloaded_category_request';\nimport { PreloadedCategoryReply } from './settings/preloaded_category_reply';\nimport { PreloadedCategoryExportCSVReply } from './settings/preloaded_category_export_csv_reply';\nimport { PreloadedCategoryCount } from './settings/preloaded_category_count';\nimport { PreloadedCategoryFind } from './settings/preloaded_category_find';\nimport { PreloadedCategoryExport } from \"./settings/preloaded_category_export\";\nimport { PreloadedWorkerStatus } from \"./settings/preloaded_worker_status_request\";\nimport { PreloadedWorkerStatusReply } from \"./settings/preloaded_worker_status\";\nimport { PreloadedCategoryWorkerStatus } from \"./settings/preloaded_category_worker_status_request\";\nimport { PreloadedCategoryWorkerStatusReply } from \"./settings/preloaded_category_worker_status\";\n\nimport { SchoolGroup } from \"./settings/school_group\";\nimport { SchoolGroupFind } from \"./settings/find_school_group\";\nimport { SchoolGroupReturn } from \"./settings/school_group_return\";\nimport { SchoolGroupCount } from \"./settings/find_school_group_count\";\n\nimport { rfc3339ToDate, isDateSet } from \"./date_helper\";\nimport { Badge } from './settings/badge';\nimport { BadgeReply } from './settings/badge_reply';\nimport { FindBadge } from './settings/find_badge';\nimport { BadgeCount } from './settings/badge_count';\nimport { RootSchoolGroupAccountV2 } from './settings/school_group v2';\n\nimport {ActivityReportCSV} from './reports/activity_report_csv';\nimport {ActivityReportPDFRequest} from './reports/activity_report_pdf_request';\nimport {ActivityReportPDF} from './reports/activity_report_pdf';\nimport {ActivityReportCSVRequest} from './reports/activity_report_csv_request';\nimport { FindActivityReport } from './reports/find_activity_report';\nimport {ActivityReportRow} from './reports/activity_report_row';\nimport { ActivityReportExportCSVStatusRequest } from './reports/activity_report_export_csv_worker_status_request';\nimport { ActivityReportExportCSVWorkerStatusReply } from './reports/activity_report_export_csv_worker_status';\nimport { ActivityReportExportPDFStatusRequest } from './reports/activity_report_export_pdf_worker_status_request';\nimport { ActivityReportExportPDFWorkerStatusReply } from './reports/activity_report_export_pdf_worker_status';\nimport { RootSchoolGroupAccountDistinctV2 } from './settings/root_school_group_account_distrinct_v2';\n\n@Injectable()\nexport class DistrictServiceMoc {\n\tuserRolesKey: string = 'userRoles';\n\ttimeout: number = 5000; //10 sec\n\tretry: number = 3; //max retry\n\t//delay:number = 10000; //max delay after retry\n\terrors: any = {};\n\tmaxPollIteration: number = 5;\n\t// userAccountRoles: UserRoles;\n\n\tconstructor(private http: HttpService, private account: Account, private config: Config) {\n\t\tthis.errors['default'] = 'There is an error when processing this request, please try again later.';\n\t\tthis.errors['no connection'] = 'There is an error when communicating with a server, please try again later.'\n\t\tthis.errors['unauthorized'] = 'Unauthorized access.';\n\t\tthis.errors['not found'] = 'No results.';\n\t\tthis.errors['invalid token'] = 'Unauthorized access.';\n\t\tthis.errors['duplicate entry'] = 'This data already exists.';\n\t\tthis.errors['bad request'] = 'Invalid request.';\n\t\tthis.errors['internal server error'] = 'Internal server error. Please try again later.';\n\t\tthis.errors['unexpected'] = 'Sorry, an unexpected error has occured. Please contact Tech Support.';\n\t\tthis.errors['timeout'] = 'Timeout when communicating with a server, please try again later.';\n\t\tthis.errors['email address is invalid'] = 'Email address is invalid.';\n\t\tthis.errors['user status is invalid'] = 'Invalid user status.';\n\t\tthis.errors['user status signup is invalid email not confirmed'] = 'The user you\\'ve invited has not yet confirmed their email address.';\n\t\tthis.errors['notification not supported'] = 'Push notifications are not supported in this browser.';\n\t\tthis.errors['account license expired'] = 'Account License has expired. Please visit the Subscription page for more details and license renewal.';\n\t\tthis.errors['invalid account license'] = 'Account License is invalid. Please visit the Subscription page for more details and license renewal.';\n\t\tthis.errors['unauthorized access role'] = 'Unauthorized access role.';\n\t}\n\n\tvalidateAcctNumber(acctNumber: string): Observable {\n\t\tlet lusr = this.userRoles();\n\t\tif (lusr != null && lusr.acctNumber == acctNumber) {\n\t\t\t//return non http observable when the userroles exists at localStorage\n\t\t\treturn Observable.create((observer: Observer) => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t} else {\n\t\t\treturn this.userRolesApi().map(usr => {\n\t\t\t\tlet match = false;\n\t\t\t\tfor (var u in usr) {\n\t\t\t\t\tif (usr[u].acctNumber == acctNumber) {\n\t\t\t\t\t\tmatch = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\t\t}\n\t}\n\n\tloadUser(): Observable {\n\t\tlet u = this.account.getUserProfileApi().subscribe(us => {\n\t\t\tthis.account.setUser(us);\n\t\t});\n\t\treturn this.userRolesApi().map(urs => {\n\t\t\tthis.setUserRoles(urs[0]);\n\t\t\treturn urs[0]\n\t\t}).do(ur => u);\n\t}\n\n\tremoveLocalStorage() {\n\t\tlocalStorage.removeItem(this.userRolesKey);\n\t}\n\n\t// reason why we changed from storing to memory to storing on localStorage\n\t// is because users are refreshing the page and they lost the school they have selected\n\t// refresh page is taking the default school not the one they have selected from the list\n\tsetUserRoles(us: UserRoles) {\n\t\tlocalStorage.setItem(this.userRolesKey, JSON.stringify(us));\n\t}\n\n\tuserRoles() {\n\t\tif (localStorage.getItem(this.userRolesKey) === null) {\n\t\t\treturn null\n\t\t}\n\t\treturn JSON.parse(localStorage.getItem(this.userRolesKey));\n\t}\n\n\tcontainsUserRole(ur: UserRoles, role: string): boolean {\n\t\tfor (var r in ur.roles) {\n\t\t\tif (ur.roles[r] == role) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tgetToken() {\n\t\treturn this.account.getToken();\n\t}\n\n\tgetError(err: any): Error {\n\t\tvar er: any;\n\t\tvar msg = 'no connection';\n\t\tif (typeof (err.json) === 'function') {\n\t\t\ter = err.json();\n\t\t\tif (er.message != null && er.message != null && er.message != '') {\n\t\t\t\tmsg = er.message;\n\t\t\t} else {\n\t\t\t\tconsole.log(err);\n\t\t\t}\n\t\t\treturn new Error(msg);\n\t\t} else if (err instanceof Error) {\n\t\t\treturn err;\n\t\t} else {\n\t\t\tconsole.log(err);\n\t\t}\n\t}\n\n\tgetUserError(err: Error): string {\n\t\treturn this.errors[err.message];\n\t}\n\n\tisErrNotFound(err: Error): boolean {\n\t\treturn err.message == 'not found';\n\t}\n\n\tisErrUnauthorized(err: Error): boolean {\n\t\treturn err.message == 'unauthorized' ||\n\t\t\terr.message == 'unauthorized access role';\n\t}\n\n\tgetUserErrorDefault(err: Error): string {\n\t\tlet e = this.errors[err.message];\n\t\tif (e != null) {\n\t\t\treturn e;\n\t\t}\n\t\treturn this.errors['default'];\n\t}\n\n\tbuildUrl(parameters) {\n\t\tvar qs = \"\";\n\t\tfor (var key in parameters) {\n\t\t\tvar value = parameters[key];\n\t\t\tif (value != null && value != '') {\n\t\t\t\tqs += encodeURIComponent(key) + \"=\" + encodeURIComponent(value) + \"&\";\n\t\t\t}\n\t\t}\n\t\tif (qs.length > 0) {\n\t\t\treturn qs.substring(0, qs.length - 1); //chop off last \"&\"\n\t\t}\n\t\treturn '';\n\t}\n\n\tparams(parameters) {\n\t\tvar params: any = {}\n\t\tfor (var key in parameters) {\n\t\t\tvar value = parameters[key];\n\t\t\tif (value != null && value != '') {\n\t\t\t\tparams[encodeURIComponent(key)] = encodeURIComponent(value);\n\t\t\t}\n\t\t}\n\t\treturn params;\n\t}\n\n\tleftPad(val: string, size: number, ch: string): string {\n\t\tvar result = String(val);\n\t\tif (!ch) {\n\t\t\tch = \" \";\n\t\t}\n\t\twhile (result.length < size) {\n\t\t\tresult = ch + result;\n\t\t}\n\t\treturn result;\n\t}\n\n\thexAcctNumber(num: number): string {\n\t\t//sign >>> is Zero-fill right shift\n\t\treturn this.leftPad((num >>> 0).toString(16), 8, '0').toUpperCase();\n\t}\n\n\t// APIs\n\tuserRolesApi(): Observable {\n\t\tvar rows: UserRoles[] = [];\n\t\trows.push({ acctNumber: 'A12F2343', schoolName: 'High School', isDefault: false, roles: ['admin', 'user'] });\n\t\trows.push({ acctNumber: 'A12F2344', schoolName: 'College', isDefault: false, roles: ['admin', 'user'] });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tsetDefaultApi(acctNumber: string): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(true);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tupdateDistrictUserApi(acctNumber: string, req: DistrictUser): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(true);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tdistrictUsersApi(acctNumber: string): Observable {\n\t\tlet rows: DistrictUser[] = [];\n\n\t\trows.push({\n\t\t\troles: ['admin', 'user'],\n\t\t\tuserId: 'userId1',\n\t\t\tfirstName: 'beni',\n\t\t\tlastName: 'kol',\n\t\t\temail: 'email@test.com',\n\t\t\topenAddRole: false,\n\t\t\tstatus: 'test',\n\t\t\towner: 'user',\n\t\t}, {\n\t\t\t\troles: ['user', 'user'],\n\t\t\t\tuserId: 'uderId2',\n\t\t\t\tfirstName: 'benjamin',\n\t\t\t\tlastName: 'kolenovic',\n\t\t\t\temail: 'test@email.com',\n\t\t\t\topenAddRole: false,\n\t\t\t\tstatus: 'test',\n\t\t\t\towner: 'user',\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tinviteDistrictUserApi(acctNumber: string, req: InviteUser): Observable {\n\t\tlet row: DistrictUser = new DistrictUser();\n\n\t\trow.roles = ['admin', 'user'];\n\t\trow.userId = 'id1';\n\t\trow.firstName = 'ben';\n\t\trow.lastName = 'lastname';\n\t\trow.email = req.email;\n\t\trow.openAddRole = false;\n\t\trow.status = 'invite';\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tremoveDistrictUserApi(acctNumber: string, req: DistrictUser): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(true);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tsubscriptionApi(acctNumber: string): Observable {\n\n\t\tlet row: subscription.SubscriptionResponse = {\n\t\t\tsupportContact: {\n\t\t\t\tname: 'test test',\n\t\t\t\tphone: 'phone',\n\t\t\t\temail: 'test@test.com',\n\t\t\t},\n\t\t\teregCustomerProfile: {\n\t\t\t\tcustId: -1,\n\t\t\t\tfirstName: '',\n\t\t\t\tlastName: 'lastName',\n\t\t\t\tusername: 'username',\n\t\t\t\temail: 'email@email.com',\n\t\t\t\tadditionalEmail: 'test@test.com',\n\t\t\t\tphone: 'phone',\n\t\t\t\tcreationDate: '2018-08-20T20:24:41.103Z',\n\t\t\t\tcreationDateValue: new Date('2018-08-20T20:24:41.103Z'),\n\t\t\t},\n\t\t\tdistrictInformation: {\n\t\t\t\tdistrictName: 'school name',\n\t\t\t\tstate: 'FL',\n\t\t\t\tcity: 'city',\n\t\t\t\tzipCode: 'zip',\n\t\t\t\taccountRegistrationId: 'acctRegID',\n\t\t\t\tacctNumber: -1,\n\t\t\t\tdistrictAcctNumber: 1,\n\t\t\t},\n\t\t\taccountlicense: {\n\t\t\t\tcode: 'code',\n\t\t\t\tlicenseTypeId: 1,\n\t\t\t\texpirationDate: '2019-08-20T20:24:41.103Z',\n\t\t\t\texpirationDateValue: new Date('2019-08-20T20:24:41.103Z'),\n\t\t\t\tstatus: 1,\n\t\t\t\tsupportedAccounts: 2,\n\t\t\t},\n\t\t};\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tcountNotification: number = 0;\n\n\tisErrDuplicateEntry(err: Error): boolean {\n\t\treturn err.message == 'duplicate entry';\n\t}\n\n\tisErrAccountLicenseExpired(err: Error): boolean {\n\t\treturn err.message == 'account license expired';\n\t}\n\n\tisErrAccountLicenseInvalid(err: Error): boolean {\n\t\treturn err.message == 'invalid account license';\n\t}\n\n\tgetDefaultSaveMessage(): string {\n\t\treturn \"Successfully Saved\";\n\t}\n\n\tsubscriptionRegistrationUrlApi(acctNumber: string): Observable {\n\t\tlet row: SubscriptionRegistrationURL = {\n\t\t\tregistrationUrl: 'http://idk-r2vm/eReg/Public/CustomerInfo.aspx?Credentials=E5B5F91FCF93631D257F65794C06AF453921F588F922EB0EA984DA4E1783ABE741217E7093C4AA5783654AD1166F6CAE5274CAD5&CcssVmTrial=True&AspxAutoDetectCookieSupport=1',\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\toauthTokenApi(req: OAuthTokenRequest): Observable {\n\t\treturn Observable.of(new OAuthToken());\n\t}\n\n\taccountAssociationFindApi(acctNumber: string): Observable {\n\t\tlet rows: AssociateAccount[] = [];\n\n\t\trows.push({\n\t\t\tacctNumber: '-1471032103',\n\t\t\tparentAccountNumber: 'parentacctnumber',\n\t\t\torganizationName: 'Iak Dev',\n\t\t\tstate: 'FL',\n\t\t\tzipCode: '3000',\n\t\t\tjoinedAt: new Date('2018-08-20T20:24:41.103Z'),\n\t\t\tenabled: true,\n\t\t}, {\n\t\t\t\tacctNumber: '-1471032104',\n\t\t\t\tparentAccountNumber: 'parentacctnumber',\n\t\t\t\torganizationName: 'Iak Dev1',\n\t\t\t\tstate: 'FL',\n\t\t\t\tzipCode: '3001',\n\t\t\t\tjoinedAt: new Date('2018-08-20T20:24:41.103Z'),\n\t\t\t\tenabled: false,\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\taccountAssociationAssociateApi(req: AssociateAccount[]): Observable {\n\t\treturn Observable.of(\"ok\");\n\t}\n\taccountAssociationCountApi(req: AssociateAccount[]): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(2);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tnoGoEnhanceEx1(): NoGoEnhance {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\treturn {\n\t\t\tid: 1,\n\t\t\tfirstName: 'first',\n\t\t\tlastName: 'last',\n\t\t\tmiddleName: 'middle',\n\t\t\tdateOfBirth: rfc3339ToDate(d),\n\t\t\treferenceId: '1',\n\t\t\treferenceType: 'soc',\n\t\t\tnotes: 'notes',\n\t\t\taddressState: 'FL',\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t\thasFile: false,\n\t\t\tsource: 'school',\n\t\t\tschoolGroupID: 1,\n\t\t\tschoolGroupName: 'Group 1',\n\t\t\tfiles: [],\n\t\t\tuid: '1',\n\t\t}\n\t}\n\n\tnoGoEnhanceEx2(): NoGoEnhance {\n\t\treturn {\n\t\t\tid: 2,\n\t\t\tfirstName: 'first2',\n\t\t\tlastName: 'last2',\n\t\t\tmiddleName: 'middle',\n\t\t\tdateOfBirth: new Date(2010, 1, 1),\n\t\t\treferenceId: '',\n\t\t\treferenceType: 'user',\n\t\t\tnotes: 'ttest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testtest test test testest test test test',\n\t\t\taddressState: 'FL',\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t\thasFile: true,\n\t\t\tsource: 'school',\n\t\t\tschoolGroupID: 2,\n\t\t\tschoolGroupName: 'Group 2',\n\t\t\tfiles: [\n\t\t\t\t{ id: 1, linkUrl: '', createdAt: new Date(), originalFileName: 'brad-pitt.jpg', downloadUrl: 'https://d26oc3sg82pgk3.cloudfront.net/files/media/slideshows/images/brad-pitt-shutterstock.jpg.644x428_q100.jpg', contentType: 'image/jpg' },\n\t\t\t\t{ id: 2, linkUrl: '', createdAt: new Date(), originalFileName: '', downloadUrl: 'http://images.indianexpress.com/2017/08/morgan-freeman-759.jpg', contentType: 'image/jpg' },\n\t\t\t\t{ id: 3, linkUrl: '', createdAt: new Date(), originalFileName: 'user.png', downloadUrl: 'https://cdn0.iconfinder.com/data/icons/PRACTIKA/256/user.png', contentType: 'image/png' },\n\t\t\t\t{ id: 4, linkUrl: '', createdAt: new Date(), originalFileName: 'python-pandas.pdf', downloadUrl: 'http://file.allitebooks.com/20150715/Instant%20Data%20Intensive%20Apps%20with%20pandas%20How-to.pdf', contentType: 'application/pdf' },\n\t\t\t\t{ id: 5, linkUrl: '', createdAt: new Date(), originalFileName: 'notification_1532372214940.soc.url.json', downloadUrl: 'https://api.myjson.com/bins/o9wl6', contentType: 'application/json' }\n\t\t\t],\n\t\t\tuid:'1',\n\t\t}\n\t}\n\n\tnoGoEnhanceEx3(): NoGoEnhance {\n\t\treturn {\n\t\t\tid: 3,\n\t\t\tfirstName: 'first2',\n\t\t\tlastName: 'last2',\n\t\t\tmiddleName: 'middle',\n\t\t\tdateOfBirth: new Date(2010, 1, 1),\n\t\t\treferenceId: '',\n\t\t\treferenceType: 'user',\n\t\t\tnotes: 'ttest testtest test test testtest test test',\n\t\t\taddressState: 'FL',\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t\thasFile: true,\n\t\t\tsource: 'school',\n\t\t\tschoolGroupID: 1,\n\t\t\tschoolGroupName: 'Group 1',\n\t\t\tfiles: [\n\t\t\t\t{ id: 2, linkUrl: '', createdAt: new Date(), originalFileName: '', downloadUrl: 'http://images.indianexpress.com/2017/08/morgan-freeman-759.jpg', contentType: 'image/png' },\n\t\t\t\t{ id: 4, linkUrl: '', createdAt: new Date(), originalFileName: 'python-pandas.pdf', downloadUrl: 'http://file.allitebooks.com/20150715/Instant%20Data%20Intensive%20Apps%20with%20pandas%20How-to.pdf', contentType: 'application/pdf' },\n\t\t\t\t{ id: 5, linkUrl: '', createdAt: new Date(), originalFileName: 'notification_1532372214940.soc.url.json', downloadUrl: 'https://api.myjson.com/bins/o9wl6', contentType: 'application/json' },\n\t\t\t],\n\t\t\tuid:'1',\n\t\t}\n\t}\n\n\n\tnoGoEnhanceSearchApi(acctNumber: string, req: NoGoEnhanceTextSearch): Observable {\n\t\tlet rows: NoGoEnhance[] = [];\n\n\t\trows.push(this.noGoEnhanceEx1());\n\t\trows.push(this.noGoEnhanceEx2());\n\t\trows.push(this.noGoEnhanceEx3());\n\n\t\tfor (let r of rows) {\n\t\t\tif (!isDateSet(r.dateOfBirth)) {\n\t\t\t\tr.dateOfBirth = null;\n\t\t\t}\n\t\t}\n\n\t\treturn Observable.of(rows);\n\t}\n\n\tnoGoEnhanceSearchCountApi(acctNumber: string, req: NoGoEnhanceTextSearch): Observable {\n\t\tlet row: NoGoEnhanceCount = { count: 1 };\n\t\treturn Observable.of(row);\n\t}\n\n\tnoGoEnhanceAddApi(acctNumber: string, req: NoGoEnhanceRequest): Observable {\n\t\tlet row: NoGoEnhanceReply = { id: 1 };\n\t\treturn Observable.of(row);\n\t}\n\n\tnoGoEnhanceUpdateApi(acctNumber: string, id: number, req: NoGoEnhanceRequest): Observable {\n\t\tlet row: NoGoEnhanceReply = { id: 1 };\n\t\treturn Observable.of(row);\n\t}\n\n\tnoGoEnhanceRemoveApi(acctNumber: string, id: number): Observable {\n\t\tlet row: NoGoEnhanceReply = { id: 1 };\n\t\treturn Observable.of(row);\n\t}\n\n\tnoGoEnhanceRemoveAllApi(acctNumber: string, req: NoGoEnhanceTextSearch): Observable {\n\t\treturn Observable.of(null);\n\t}\n\n\tnoGoEnhanceExportCsvApi(acctNumber: string, req: NoGoEnhanceExportCSV): Observable {\n\t\tlet row: NoGoEnhanceExportCSVReply = {\n\t\t\tdownloadUrls: ['http://edge.liveleak.com/80281E/u/u/thumbs/2010/Apr/3/1ddac1028fc6_thumb_1.jpg'],\n\t\t\trequestId: 'd808bb2d-9660-4430-9fc4-613df1fee4fa'\n\t\t};\n\t\treturn Observable.of(row);\n\t}\n\n\tnoGoEnhanceImportCsvUrl(acctNumber: string): string {\n\t\treturn `${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/import/csv`\n\t}\n\n\tnoGoEnhanceFindApi(acctNumber: string, req: NoGoEnhanceFind): Observable {\n\t\treturn this.noGoEnhanceSearchApi(acctNumber, null).map(rows => {\n\n\t\t\tlet rowsRet: NoGoEnhance[] = [];\n\t\t\tfor (let r of rows) {\n\t\t\t\tlet add = true;\n\n\t\t\t\tif (req.firstName != '') {\n\t\t\t\t\tif (r.firstName != req.firstName) {\n\t\t\t\t\t\tadd = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (req.id != 0) {\n\t\t\t\t\tif (r.id != req.id) {\n\t\t\t\t\t\tadd = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (add) {\n\t\t\t\t\trowsRet.push(r);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (rowsRet.length == 0) {\n\t\t\t\tthrow new Error('not found');\n\t\t\t}\n\t\t\treturn rowsRet;\n\t\t});\n\t}\n\n\tnoGoEnhanceFileDownloadJsonUrl(acctNumber: string, jsonUrl: string): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\treturn this.http.get(jsonUrl)\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tlet data = resp.json();\n\t\t\t\t\treturn data.url;\n\t\t\t\t} else { throw this.getError(resp); }\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceFileUploadUrl(acctNumber: string): string {\n\t\treturn `https://httpbin.org/post`\n\t}\n\n\tnoGoEnhanceFileRemoveApi(acctNumber: string, id: number): Observable {\n\t\tlet row: NoGoEnhanceFileReply = { fileId: 1 };\n\t\treturn Observable.of(row);\n\t}\n\tnoGoEnhanceImportCsvStatus(acctNumber: string, req: NoGoEnhanceWorkerStatus): Observable {\n\t\tlet ws: NoGoEnhanceWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tnoGoEnhanceExportCsvStatus(acctNumber: string, req: NoGoEnhanceWorkerStatus): Observable {\n\t\tlet ws: NoGoEnhanceWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\t// RFID users list API\n\trfidUsersExportCsvApi(acctNumber: string, req: RfidUsersExport): Observable {\n\t\tlet rows: RfidUsersExportCSVReply = {\n\t\t\tdownloadUrls: ['https://district.ccssvm.com/something'],\n\t\t\trequestId: 'd808bb2d-9660-4430-9fc4-613df1fee4fa'\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(rows);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\trfidUsersRemoveApi(acctNumber: string, id: number): Observable {\n\t\tlet rows: RfidUsersReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\trfidUsersImportCsvUrl(acctNumber: string): string {\n\t\treturn 'https://httpbin.org/post'\n\t}\n\n\trfidUsersSearchApi(acctNumber: string, req: RfidUsersTextSearch): Observable {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\tlet rows: RfidUsers[] = [];\n\t\trows.push(\n\t\t\t{\n\t\t\t\tid: 1,\n\t\t\t\tfirstName: 'first',\n\t\t\t\tlastName: 'last',\n\t\t\t\tmiddleName: 'middle',\n\t\t\t\tbadgeTitle: 'Visitor',\n\t\t\t\tbadgeNumber: 1,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\trfCardId: '23ddsa',\n\t\t\t\tsource: 'school',\n\t\t\t\tschoolGroupID: 1,\n\t\t\t\tschoolGroupName: 'Group 1',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tuid: '',\n\t\t\t}, {\n\t\t\t\tid: 2,\n\t\t\t\tfirstName: 'first2',\n\t\t\t\tlastName: 'last2',\n\t\t\t\tmiddleName: 'middle2',\n\t\t\t\tbadgeTitle: 'Visitor',\n\t\t\t\tbadgeNumber: 0,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\trfCardId: 'dsad11',\n\t\t\t\tsource: 'district',\n\t\t\t\tschoolGroupID: 2,\n\t\t\t\tschoolGroupName: 'Group 2',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tuid:'',\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\trfidUsersSearchCountApi(acctNumber: string, req: RfidUsersTextSearch): Observable {\n\t\tlet row: RfidUsersCount = {\n\t\t\tcount: 10\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\trfidUsersRemoveAllApi(acctNumber: string, req: RfidUsersTextSearch): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(null);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\trfidUsersFindApi(acctNumber: string, req: RfidUsersFind): Observable {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\tlet rows: RfidUsers[] = [];\n\t\trows.push(\n\t\t\t{\n\t\t\t\tid: 1,\n\t\t\t\tfirstName: 'first',\n\t\t\t\tlastName: 'last',\n\t\t\t\tmiddleName: 'middle',\n\t\t\t\tbadgeTitle: 'Visitor',\n\t\t\t\tbadgeNumber: 1,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\trfCardId: '23ddsa',\n\t\t\t\tsource: 'school',\n\t\t\t\tschoolGroupID: 1,\n\t\t\t\tschoolGroupName: 'Group 1',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tuid:'',\n\t\t\t}, {\n\t\t\t\tid: 2,\n\t\t\t\tfirstName: 'first2',\n\t\t\t\tlastName: 'last2',\n\t\t\t\tmiddleName: 'middle2',\n\t\t\t\tbadgeTitle: 'Visitor',\n\t\t\t\tbadgeNumber: 0,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\trfCardId: 'dsad11',\n\t\t\t\tsource: 'district',\n\t\t\t\tschoolGroupID: 2,\n\t\t\t\tschoolGroupName: 'Group 2',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tuid: '',\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\trfidUsersUpdateApi(acctNumber: string, id: number, req: RfidUsersRequest): Observable {\n\t\tlet row: RfidUsersReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\trfidUsersAddApi(acctNumber: string, req: RfidUsersRequest): Observable {\n\t\tlet rows: RfidUsersReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\twsRfidUserListWorkerStatusReply: RfidUserListWorkerStatusReply;\n\trfidUsersImportCsvStatus(acctNumber: string, req: RfidUserListWorkerStatus): Observable {\n\t\tif (!this.wsRfidUserListWorkerStatusReply) {\n\t\t\tthis.wsRfidUserListWorkerStatusReply = {\n\t\t\t\terror: '',\n\t\t\t\timportedRows: 1,\n\t\t\t\ttotalFileRows: 3,\n\t\t\t\tfilePath: '',\n\t\t\t\tdone: false,\n\t\t\t\tlastSequenceId: 0,\n\t\t\t};\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.wsRfidUserListWorkerStatusReply.done = true;\n\t\t\t\t//this.wsRfidUserListWorkerStatusReply.error='something happen';\n\t\t\t\tthis.wsRfidUserListWorkerStatusReply.importedRows = 3;\n\t\t\t\tconsole.log('done');\n\t\t\t}, 4000);\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(this.wsRfidUserListWorkerStatusReply);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\trfidUsersExportCsvStatus(acctNumber: string, req: RfidUserListWorkerStatus): Observable {\n\t\tlet ws: RfidUserListWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\t//Preloaded\n\tpreloadedCategoriesApi(acctNumber: string, req: FindPreloadedCategory): Observable {\n\t\tvar rows: PreloadedCategory[] = [{\n\t\t\tid: 1,\n\t\t\tpreloadedCategoryId: 0,\n\t\t\tpreloadedCategoryName: 'Category 1',\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t}, {\n\t\t\tid: 2,\n\t\t\tpreloadedCategoryId: 1,\n\t\t\tpreloadedCategoryName: 'Category 2',\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t},\n\t\t{\n\t\t\tid: 3,\n\t\t\tpreloadedCategoryId: 3,\n\t\t\tpreloadedCategoryName: 'Custom Cat',\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t}\n\t\t];\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(rows);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\tpreloadedCategorySearchApi(acctNumber: string, req: PreloadedCategoryTextSearch): Observable {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\tlet rows: PreloadedCategory[] = [];\n\t\trows.push(\n\t\t\t{\n\t\t\t\tid: 1,\n\t\t\t\tpreloadedCategoryId: 1,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 1',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t}, {\n\t\t\t\tid: 2,\n\t\t\t\tpreloadedCategoryId: 2,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 2',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 3,\n\t\t\t\tpreloadedCategoryId: 3,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 3',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tid: 4,\n\t\t\t\tpreloadedCategoryId: 2500,\n\t\t\t\tpreloadedCategoryName: 'district cat 1',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 5,\n\t\t\t\tpreloadedCategoryId: 4,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 4',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\t\t);\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedCategorySearchCountApi(acctNumber: string, req: PreloadedCategoryTextSearch): Observable {\n\t\tlet row: PreloadedCategoryCount = {\n\t\t\tcount: 10\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedCategoryAddApi(acctNumber: string, req: PreloadedCategoryRequest): Observable {\n\t\tlet rows: PreloadedCategoryReply = {\n\t\t\tid: 1,\n\t\t\tpreloadedCategoryId: 3,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedCategoryUpdateApi(acctNumber: string, id: number, req: PreloadedCategoryRequest): Observable {\n\t\tlet row: PreloadedCategoryReply = {\n\t\t\tid: 1,\n\t\t\tpreloadedCategoryId: 3,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedCategoryRemoveApi(acctNumber: string, id: number): Observable {\n\t\tlet rows: PreloadedCategoryReply = {\n\t\t\tid: 1,\n\t\t\tpreloadedCategoryId: 3,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedCategoryRemoveAllApi(acctNumber: string, req: PreloadedCategoryTextSearch): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(null);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\tpreloadedCategoryExportCsvApi(acctNumber: string, req: PreloadedCategoryExport): Observable {\n\t\tlet rows: PreloadedCategoryExportCSVReply = {\n\t\t\tdownloadUrls: ['https://school.ccssvm.com/something'],\n\t\t\trequestId: 'd808bb2d-9660-4430-9fc4-613df1fee4fa',\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(rows);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\tpreloadedCategoryImportCsvUrl(acctNumber: string): string {\n\t\treturn 'https://httpbin.org/post'\n\t}\n\n\tpreloadedCategoryFindApi(acctNumber: string, req: PreloadedCategoryFind): Observable {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\tlet rows: PreloadedCategory[] = [];\n\t\trows.push(\n\t\t\t{\n\t\t\t\tid: 1,\n\t\t\t\tpreloadedCategoryId: 1,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 1',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t}, {\n\t\t\t\tid: 2,\n\t\t\t\tpreloadedCategoryId: 2,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 2',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 3,\n\t\t\t\tpreloadedCategoryId: 3,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 3',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tid: 4,\n\t\t\t\tpreloadedCategoryId: 2500,\n\t\t\t\tpreloadedCategoryName: 'district cat 1',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 5,\n\t\t\t\tpreloadedCategoryId: 4,\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName 4',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},\n\t\t);\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedCategoryImportCsvStatus(acctNumber: string, req: PreloadedCategoryWorkerStatus): Observable {\n\t\tlet ws: PreloadedCategoryWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tpreloadedCategoryExportCsvStatus(acctNumber: string, req: PreloadedCategoryWorkerStatus): Observable {\n\t\tlet ws: PreloadedCategoryWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedSearchApi(acctNumber: string, req: PreloadedTextSearch): Observable {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\tlet rows: Preloaded[] = [];\n\t\trows.push(\n\t\t\t{\n\t\t\t\tid: 1,\n\t\t\t\tfirstName: 'first',\n\t\t\t\tlastName: 'last',\n\t\t\t\tmiddleName: 'middle',\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName',\n\t\t\t\tpreloadedCategoryId: 1,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tschoolGroupName: 'Group 1',\n\t\t\t\tschoolGroupID: 1,\n\t\t\t\tsource: 'school',\n\t\t\t\tuid: '1',\n\t\t\t}, {\n\t\t\t\tid: 2,\n\t\t\t\tfirstName: 'first2',\n\t\t\t\tlastName: 'last2',\n\t\t\t\tmiddleName: 'middle2',\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName',\n\t\t\t\tpreloadedCategoryId: 12,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\tschoolGroupName: 'Group 2',\n\t\t\t\tschoolGroupID: 2,\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tsource: 'district',\n\t\t\t\tuid:'2',\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedSearchCountApi(acctNumber: string, req: PreloadedTextSearch): Observable {\n\t\tlet row: PreloadedCount = {\n\t\t\tcount: 10\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedAddApi(acctNumber: string, req: PreloadedRequest): Observable {\n\t\tlet rows: PreloadedReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedUpdateApi(acctNumber: string, id: number, req: PreloadedRequest): Observable {\n\t\tlet row: PreloadedReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedRemoveApi(acctNumber: string, id: number): Observable {\n\t\tlet rows: PreloadedReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedRemoveAllApi(acctNumber: string, req: PreloadedTextSearch): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(null);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\tpreloadedExportCsvApi(acctNumber: string, req: PreloadedExport): Observable {\n\t\tlet rows: PreloadedExportCSVReply = {\n\t\t\tdownloadUrls: ['https://school.ccssvm.com/something'],\n\t\t\trequestId: 'd808bb2d-9660-4430-9fc4-613df1fee4fa'\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tobserver.next(rows);\n\t\t\t\tobserver.complete();\n\t\t\t}, 1000);\n\t\t});\n\t}\n\n\tpreloadedImportCsvUrl(acctNumber: string): string {\n\t\treturn 'https://httpbin.org/post'\n\t}\n\n\tpreloadedFindApi(acctNumber: string, req: PreloadedFind): Observable {\n\t\tlet d: any = '0001-01-01T00:00:00Z';\n\t\tlet rows: Preloaded[] = [];\n\t\trows.push(\n\t\t\t{\n\t\t\t\tid: 1,\n\t\t\t\tfirstName: 'first',\n\t\t\t\tlastName: 'last',\n\t\t\t\tmiddleName: 'middle',\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName',\n\t\t\t\tpreloadedCategoryId: 1,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tschoolGroupName: 'Group 1',\n\t\t\t\tschoolGroupID: 1,\n\t\t\t\tsource: 'school',\n\t\t\t\tuid:'1',\n\t\t\t}, {\n\t\t\t\tid: 2,\n\t\t\t\tfirstName: 'first2',\n\t\t\t\tlastName: 'last2',\n\t\t\t\tmiddleName: 'middle2',\n\t\t\t\tpreloadedCategoryName: 'preloadedCategoryName',\n\t\t\t\tpreloadedCategoryId: 2,\n\t\t\t\tfield1: 'field1',\n\t\t\t\tfield2: 'field2',\n\t\t\t\tfield3: 'field3',\n\t\t\t\tfield4: 'field4',\n\t\t\t\tfield5: 'field5',\n\t\t\t\tfield6: 'field6',\n\t\t\t\tfield7: 'field7',\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t\tschoolGroupName: 'Group 2',\n\t\t\t\tschoolGroupID: 2,\n\t\t\t\tsource: 'district',\n\t\t\t\tuid:'2',\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tpreloadedImportCsvStatus(acctNumber: string, req: PreloadedWorkerStatus): Observable {\n\t\tlet ws: PreloadedWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tpreloadedExportCsvStatus(acctNumber: string, req: PreloadedWorkerStatus): Observable {\n\t\tlet ws: PreloadedWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\t//SchoolGroup\n\tschoolGroupAddApi(acctnumber: string, req: SchoolGroup): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(req);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tschoolGroupFindApi(req: SchoolGroupFind): Observable {\n\t\tlet rows: SchoolGroup[] = [];\n\t\trows.push({\n\t\t\tschoolGroupID: 1,\n\t\t\tname: 'Group 1',\n\t\t\taccounts: [{ acctNumber: -1471032103, organizationName: 'school 1' }, { acctNumber: -2104, organizationName: 'school 2' }],\n\t\t\tdistrictAcctNumber: -1471032103,\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t}, {\n\t\t\t\tschoolGroupID: 2,\n\t\t\t\tname: 'Group 2',\n\t\t\t\taccounts: [{ acctNumber: -1471032104, organizationName: 'school 2' }, { acctNumber: 1235, organizationName: 'school 3' }],\n\t\t\t\tdistrictAcctNumber: -1471032103,\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t},{\n\t\t\t\tschoolGroupID: 3,\n\t\t\t\tname: 'All',\n\t\t\t\taccounts: [{ acctNumber: -1471032104, organizationName: 'school 2' }, { acctNumber: 1235, organizationName: 'school 3' }],\n\t\t\t\tdistrictAcctNumber: -1471032103,\n\t\t\t\tcreatedAt: new Date(),\n\t\t\t\tupdatedAt: new Date(),\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tschoolGroupFindAccountsV2Api(req: SchoolGroupFind): Observable {\n\t\tlet rows: RootSchoolGroupAccountV2[] = [];\n\t\trows.push({\n\t\t\tschoolGroupID: 1,\n\t\t\tschoolGroupName: 'Group 1',\n\t\t\tacctNumber: -1471032102,\n\t\t\torganizationName: 'school 1',\n\t\t\tdistrictAcctNumber: -1471032103,\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t}, {\n\t\t\tschoolGroupID: 1,\n\t\t\tschoolGroupName: 'Group 1',\n\t\t\tacctNumber: -1471032103,\n\t\t\torganizationName: 'school 2',\n\t\t\tdistrictAcctNumber: -1471032103,\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t\t},{\n\t\t\t\tschoolGroupID: 1,\n\t\t\tschoolGroupName: 'Group 1',\n\t\t\tacctNumber: -1471032104,\n\t\t\torganizationName: 'school 3',\n\t\t\tdistrictAcctNumber: -1471032103,\n\t\t\tcreatedAt: new Date(),\n\t\t\tupdatedAt: new Date(),\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tschoolGroupUpdateApi(acctNumber: string, req: SchoolGroup): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(req);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tschoolGroupRemoveApi(acctnumber: string, req: SchoolGroup): Observable {\n\t\tlet rows: SchoolGroupReturn = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tschoolGroupFindCountApi(acctNumber: string, req: SchoolGroupFind): Observable {\n\t\tlet rows: SchoolGroupCount = {\n\t\t\tcount: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tschoolGroupFindAccountsV2DistinctApi(req: SchoolGroupFind): Observable {\n\t\tlet rows: RootSchoolGroupAccountDistinctV2[] = [];\n\t\trows.push({\n\t\t\taccounts: [{organizationName:'school 1',acctNumber:1471032101},{organizationName:'school 2',acctNumber:1471032102}],\n\t\t\tname: 'Group 1',\n\t\t\tschoolGroupId: 1,\n\t\t}, {\n\t\t\taccounts: [{organizationName:'school 3',acctNumber:1471032103},{organizationName:'school 4',acctNumber:1471032104},{organizationName:'school 4',acctNumber:1471032104}],\n\t\t\tname: 'Group 2',\n\t\t\tschoolGroupId: 2,\n\t\t\t},{\n\t\t\taccounts: [{organizationName:'school 1',acctNumber:1471032101},{organizationName:'school 2',acctNumber:1471032102},{organizationName:'school 3',acctNumber:1471032103},{organizationName:'school 4',acctNumber:1471032104},{organizationName:'school 4',acctNumber:1471032104}],\n\t\t\tname: 'all',\n\t\t\tschoolGroupId: 3,\n\t\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tbadgeAddApi(acctNumber: string, req: Badge): Observable{\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(req);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tbadgeUpdateApi(acctNumber: string, req:Badge): Observable{\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(req);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tbadgeFindApi(req: FindBadge): Observable {\n\t\tlet rows: Badge[] = [];\n\t\trows.push({\n\t\t\tid: 0,\n\t\t\tbadgeNumber: 0,\n\t\t\tbadgeName: \"Visitor\",\n\t\t\tacctNumber: -1471032103,\n\t\t\tschoolGroupID: 0,\n\t\t\tschoolGroupName: '',\n\t\t\tcreatedAt: new Date(),\n\t\t\tchangedAt: new Date(),\n\t\t}, {\n\t\t\tid: 1,\n\t\t\tbadgeNumber: 1,\n\t\t\tbadgeName: \"staff\",\n\t\t\tacctNumber: -1471032103,\n\t\t\tschoolGroupID: 0,\n\t\t\tschoolGroupName: '',\n\t\t\tcreatedAt: new Date(),\n\t\t\tchangedAt: new Date(),\n\t\t},{\n\t\t\tid: 2,\n\t\t\tbadgeNumber: 2,\n\t\t\tbadgeName: \"volunter\",\n\t\t\tacctNumber: -1471032103,\n\t\t\tschoolGroupID: 0,\n\t\t\tschoolGroupName: '',\n\t\t\tcreatedAt: new Date(),\n\t\t\tchangedAt: new Date('0001-01-01T00:00:00Z'),\n\t\t});\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tbadgeFindCountApi(acctNumber: string, req: FindBadge): Observable {\n\t\tlet rows: BadgeCount = {\n\t\t\tcount: 3,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tbadgeDeleteApi(acctnumber: string, id: number): Observable {\n\t\tlet rows: BadgeReply = {\n\t\t\tid: 1,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tactivityReportPdf(acctNumber: string, req: ActivityReportPDFRequest): Observable {\n\t\tlet rows: ActivityReportPDF = new ActivityReportPDF();\n\t\trows.downloadUrls = ['https://www.imf.org/external/pubs/ft/weo/2016/01/pdf/text.pdf'];\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tactivityReportCsv(acctNumber: string, req: ActivityReportCSVRequest): Observable {\n\t\tvar row: ActivityReportCSV = new ActivityReportCSV();\n\n\t\trow.downloadUrls = ['http://viewportsizes.com/devices.csv'];\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(row);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tcountActivityReportApi(acctNumber: string, req: FindActivityReport): Observable {\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(2);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tactivityReportApi(acctNumber: string, req: FindActivityReport): Observable {\n\t\tlet rows: ActivityReportRow[] = [];\n\n\t\trows.push({\n\t\t\tid: 'id1',\n\t\t\tname: 'ben lastname',\n\t\t\tbadgeName: 'test',\n\t\t\tloginTime: new Date(),\n\t\t\tlogoutTime: new Date(),\n\t\t\tadditionalInfo1: 'Additional Info1',\n\t\t\tadditionalInfo2: 'Additional Info2',\n\t\t\tadditionalInfo3: 'Additional Info3',\n\t\t\tadditionalInfo4: 'Additional Info4',\n\t\t\tloginLocationId: 'Additional Info5',\n\t\t\tlogoutLocationId: 'Additional Info6',\n\t\t\timages: [{\n\t\t\t\timgType: 'photoId',\n\t\t\t\tlink: 'https://cdn0.iconfinder.com/data/icons/PRACTIKA/256/user.png'\n\t\t\t}, {\n\t\t\t\timgType: 'photoId',\n\t\t\t\tlink: 'http://www.hit4hit.org/img/login/user-icon-6.png'\n\t\t\t}],\n\t\t\timageIndex: 0,\n\t\t\tbadgeId: 1,\n\t\t\tstationName: 'station1',\n\t\t\tschoolName: 'School Name School Name ',\n\t\t\tdataSource: {\n\t\t\t\trfidUser: {\n\t\t\t\t\tcardId: '',\n\t\t\t\t\tfield1: '',\n\t\t\t\t\tfield2: '',\n\t\t\t\t},\n\t\t\t\tpreloaded: {\n\t\t\t\t\tfield1: '',\n\t\t\t\t\tfield2: '',\n\t\t\t\t},\n\t\t\t\tstudent: {\n\t\t\t\t\tsisStudentId:'test',\n\t\t\t\t\tstudentId:'123',\n\t\t\t\t\tfield1:'ff1',\n\t\t\t\t\tfield2:'ff2',\n\t\t\t\t},\n\t\t\t\tstudentContact: {\n\t\t\t\t\tcardId: '',\n\t\t\t\t\tname: '',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\t{\n\t\t\t\tid: 'id2',\n\t\t\t\tname: 'ben lastname2',\n\t\t\t\tbadgeName: 'test2',\n\t\t\t\tloginTime: new Date(),\n\t\t\t\tlogoutTime: new Date(),\n\t\t\t\tadditionalInfo1: 'Additional Info1',\n\t\t\t\tadditionalInfo2: 'Additional Info2',\n\t\t\t\tadditionalInfo3: 'Additional Info3',\n\t\t\t\tadditionalInfo4: 'Additional Info4',\n\t\t\t\tloginLocationId: 'Additional Info5',\n\t\t\t\tlogoutLocationId: 'Additional Info6',\n\t\t\t\timages: [],\n\t\t\t\timageIndex: 0,\n\t\t\t\tbadgeId: 2,\n\t\t\t\tstationName: 'station2',\n\t\t\t\tschoolName: 'School Name 2',\n\t\t\t\tdataSource: {\n\t\t\t\t\trfidUser: {\n\t\t\t\t\t\tcardId: '',\n\t\t\t\t\t\tfield1: '',\n\t\t\t\t\t\tfield2: '',\n\t\t\t\t\t},\n\t\t\t\t\tpreloaded: {\n\t\t\t\t\t\tfield1: '',\n\t\t\t\t\t\tfield2: '',\n\t\t\t\t\t},\n\t\t\t\t\tstudent: {\n\t\t\t\t\t\tsisStudentId:'',\n\t\t\t\t\t\tstudentId:'',\n\t\t\t\t\t\tfield1:'',\n\t\t\t\t\t\tfield2:'',\n\t\t\t\t\t},\n\t\t\t\t\tstudentContact: {\n\t\t\t\t\t\tcardId: '',\n\t\t\t\t\t\tname: '',\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'id3',\n\t\t\t\tname: 'ben lastname2',\n\t\t\t\tbadgeName: 'test2',\n\t\t\t\tloginTime: new Date(),\n\t\t\t\tlogoutTime: new Date(),\n\t\t\t\tadditionalInfo1: 'Additional Info1',\n\t\t\t\tadditionalInfo2: 'Additional Info2',\n\t\t\t\tadditionalInfo3: 'Additional Info3',\n\t\t\t\tadditionalInfo4: 'Additional Info4',\n\t\t\t\tloginLocationId: 'Additional Info5',\n\t\t\t\tlogoutLocationId: 'Additional Info6',\n\t\t\t\timages: [],\n\t\t\t\timageIndex: 0,\n\t\t\t\tbadgeId: 3,\n\t\t\t\tstationName: 'station3',\n\t\t\t\tschoolName: 'School Name 3',\n\t\t\t\tdataSource: {\n\t\t\t\t\trfidUser: {\n\t\t\t\t\t\tcardId: '',\n\t\t\t\t\t\tfield1: '',\n\t\t\t\t\t\tfield2: '',\n\t\t\t\t\t},\n\t\t\t\t\tpreloaded: {\n\t\t\t\t\t\tfield1: '',\n\t\t\t\t\t\tfield2: '',\n\t\t\t\t\t},\n\t\t\t\t\tstudent: {\n\t\t\t\t\t\tsisStudentId:'',\n\t\t\t\t\t\tstudentId:'',\n\t\t\t\t\t\tfield1:'',\n\t\t\t\t\t\tfield2:'',\n\t\t\t\t\t},\n\t\t\t\t\tstudentContact: {\n\t\t\t\t\t\tcardId: '',\n\t\t\t\t\t\tname: '',\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'id4',\n\t\t\t\tname: 'ben lastname2',\n\t\t\t\tbadgeName: 'test2',\n\t\t\t\tloginTime: new Date(),\n\t\t\t\tlogoutTime: new Date(),\n\t\t\t\tadditionalInfo1: 'Additional Info1',\n\t\t\t\tadditionalInfo2: 'Additional Info2',\n\t\t\t\tadditionalInfo3: 'Additional Info3',\n\t\t\t\tadditionalInfo4: 'Additional Info4',\n\t\t\t\tloginLocationId: 'Additional Info5',\n\t\t\t\tlogoutLocationId: 'Additional Info6',\n\t\t\t\timages: [],\n\t\t\t\timageIndex: 0,\n\t\t\t\tbadgeId: 4,\n\t\t\t\tstationName: 'station4',\n\t\t\t\tschoolName: 'School Name 4',\n\t\t\t\tdataSource: {\n\t\t\t\t\trfidUser: {\n\t\t\t\t\t\tcardId: '',\n\t\t\t\t\t\tfield1: '',\n\t\t\t\t\t\tfield2: '',\n\t\t\t\t\t},\n\t\t\t\t\tpreloaded: {\n\t\t\t\t\t\tfield1: '',\n\t\t\t\t\t\tfield2: '',\n\t\t\t\t\t},\n\t\t\t\t\tstudent: {\n\t\t\t\t\t\tsisStudentId:'',\n\t\t\t\t\t\tstudentId:'',\n\t\t\t\t\t\tfield1:'',\n\t\t\t\t\t\tfield2:'',\n\t\t\t\t\t},\n\t\t\t\t\tstudentContact: {\n\t\t\t\t\t\tcardId: '',\n\t\t\t\t\t\tname: '',\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(rows);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n\tactivityReportExportCSVStatus(acctNumber: string, req: ActivityReportExportCSVStatusRequest): Observable {\n\t\tlet ws: ActivityReportExportCSVWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\tactivityReportExportPDFStatus(acctNumber: string, req: ActivityReportExportPDFStatusRequest): Observable {\n\t\tlet ws: ActivityReportExportPDFWorkerStatusReply = {\n\t\t\terror: '',\n\t\t\timportedRows: 1,\n\t\t\ttotalFileRows: 1,\n\t\t\tfilePath: '',\n\t\t\tdone: true,\n\t\t\tlastSequenceId: 0,\n\t\t}\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tobserver.next(ws);\n\t\t\tobserver.complete();\n\t\t});\n\t}\n\n}\n\n\n\n\n\n\n","\nimport { throwError as observableThrowError, Observable, Observer } from 'rxjs';\nimport 'rxjs/add/operator/map';\nimport 'rxjs/add/operator/catch';\nimport 'rxjs/add/observable/throw';\n\nimport { Injectable, Injector } from '@angular/core';\nimport { Http, Headers, Response } from '@angular/http';\nimport { Account } from './account.service';\nimport { Config } from './config';\nimport { UserRoles } from './user_roles';\nimport { DistrictUser } from './district_user';\nimport { InviteUser } from './invite_district_user';\nimport { SubscriptionResponse } from \"./subscription\";\n\nimport { SubscriptionRegistrationURL } from './subscription_registration_url';\nimport { HttpService } from './http.service';\nimport { OAuthToken } from './oauth-token';\nimport { OAuthTokenRequest } from './oauth-token-request';\nimport { Token } from './token';\n\nimport { environment } from \"../environments/environment\";\nimport { DistrictServiceMoc } from \"./district.service.moc\";\nimport { AssociateAccount } from './settings/account_association';\nimport { AssociateAccountBatch } from './settings/account_association_batch';\nimport { AccountAssociationCount } from './settings/account_association_count';\nimport { AccountAssociationReturn } from './settings/account_association_return';\n\nimport { NoGoEnhance } from './settings/nogo-enhance';\nimport { NoGoEnhanceTextSearch } from './settings/nogo-enhance-text-search';\nimport { NoGoEnhanceRequest } from './settings/nogo-enhance-request';\nimport { NoGoEnhanceReply } from './settings/nogo-enhance-reply';\nimport { NoGoEnhanceExportCSVReply } from './settings/nogo-enhance-export-csv-reply';\nimport { NoGoEnhanceCount } from './settings/nogo-enhance-count';\nimport { NoGoEnhanceFind } from './settings/nogo-enhance-find';\nimport { NoGoEnhanceExportCSV } from './settings/nogo-enhance-export-csv';\nimport { NoGoEnhanceFileReply } from './settings/nogo-enhance-file-reply';\nimport { NoGoEnhanceWorkerStatus } from \"./settings/nogo-enhance-worker-status-request\";\nimport { NoGoEnhanceWorkerStatusReply } from \"./settings/nogo-enhance-worker-status\";\n\nimport { RfidUsersExportCSVReply } from './settings/rfid_users_export_csv_reply';\nimport { RfidUsersExport } from './settings/rfid_users_export';\nimport { RfidUsersReply } from './settings/rfid_users_reply';\nimport { RfidUsersTextSearch } from './settings/rfid_users_text_search';\nimport { RfidUsers } from './settings/rfid_users';\nimport { RfidUsersCount } from './settings/rfid_users_count';\nimport { RfidUsersFind } from './settings/rfid_users_find';\nimport { RfidUsersRequest } from './settings/rfid_users_request';\nimport { RfidUserListWorkerStatus } from './settings/rfid_users_worker_request';\nimport { RfidUserListWorkerStatusReply } from './settings/rfid_users_worker_status';\n\nimport { Preloaded } from './settings/preloaded';\nimport { PreloadedTextSearch } from './settings/preloaded_text_search';\nimport { PreloadedRequest } from './settings/preloaded_request';\nimport { PreloadedReply } from './settings/preloaded_reply';\nimport { PreloadedExportCSVReply } from './settings/preloaded_export_csv_reply';\nimport { PreloadedCount } from './settings/preloaded_count';\nimport { PreloadedFind } from \"./settings/preloaded_find\";\nimport { PreloadedExport } from \"./settings/preloaded_export\";\nimport { FindPreloadedCategory } from './settings/find_preloaded_category';\nimport { PreloadedCategory } from './settings/preloaded_category';\nimport { PreloadedCategoryTextSearch } from './settings/preloaded_category_text_search';\nimport { PreloadedCategoryRequest } from './settings/preloaded_category_request';\nimport { PreloadedCategoryReply } from './settings/preloaded_category_reply';\nimport { PreloadedCategoryExportCSVReply } from './settings/preloaded_category_export_csv_reply';\nimport { PreloadedCategoryCount } from './settings/preloaded_category_count';\nimport { PreloadedCategoryFind } from './settings/preloaded_category_find';\nimport { PreloadedCategoryExport } from \"./settings/preloaded_category_export\";\nimport { PreloadedWorkerStatus } from \"./settings/preloaded_worker_status_request\";\nimport { PreloadedWorkerStatusReply } from \"./settings/preloaded_worker_status\";\nimport { PreloadedCategoryWorkerStatus } from \"./settings/preloaded_category_worker_status_request\";\nimport { PreloadedCategoryWorkerStatusReply } from \"./settings/preloaded_category_worker_status\";\n\nimport { SchoolGroup } from \"./settings/school_group\";\nimport { SchoolGroupFind } from \"./settings/find_school_group\";\nimport { SchoolGroupCount } from \"./settings/find_school_group_count\";\nimport { SchoolGroupReturn } from \"./settings/school_group_return\";\n\nimport { rfc3339ToDate, isDateSet } from './date_helper';\nimport { Badge } from './settings/badge';\nimport { BadgeReply } from './settings/badge_reply';\nimport { FindBadge } from './settings/find_badge';\nimport { BadgeCount } from './settings/badge_count';\nimport { RootSchoolGroupAccountV2 } from './settings/school_group v2';\n\nimport {ActivityReportCSV} from './reports/activity_report_csv';\nimport {ActivityReportPDFRequest} from './reports/activity_report_pdf_request';\nimport {ActivityReportPDF} from './reports/activity_report_pdf';\nimport {ActivityReportCSVRequest} from './reports/activity_report_csv_request';\nimport { FindActivityReport } from './reports/find_activity_report';\nimport {ActivityReportRow} from './reports/activity_report_row';\nimport { ActivityReportExportCSVStatusRequest } from './reports/activity_report_export_csv_worker_status_request';\nimport { ActivityReportExportPDFStatusRequest } from './reports/activity_report_export_pdf_worker_status_request';\nimport { RootSchoolGroupAccountDistinctV2 } from './settings/root_school_group_account_distrinct_v2';\n\n@Injectable()\nexport class DistrictService {\n\tuserRolesKey: string = 'userRoles';\n\ttimeout: number = 10000; //10 sec\n\tretry: number = 3; //max retry\n\tdelay: number = 3000; //max delay after retry\n\terrors: any = {};\n\n\tconstructor(private http: HttpService, private account: Account, private config: Config) {\n\t\tthis.errors['default'] = 'There is an error when processing this request, please try again later.';\n\t\tthis.errors['no connection'] = 'Your device seems to be offline, please try again later.'\n\t\tthis.errors['unauthorized'] = 'Unauthorized access. Please try login again.';\n\t\tthis.errors['not found'] = 'No results.';\n\t\tthis.errors['invalid token'] = 'Unauthorized access. Please try login again.';\n\t\tthis.errors['duplicate entry'] = 'This data already exists.';\n\t\tthis.errors['bad request'] = 'Invalid request.';\n\t\tthis.errors['internal server error'] = 'Internal server error. Please try again later.';\n\t\tthis.errors['unexpected'] = 'Sorry, an unexpected error has occured. Please contact Tech Support.';\n\t\tthis.errors['timeout'] = 'Timeout when communicating with a server, please try again later.';\n\t\tthis.errors['email address is invalid'] = 'Email address is invalid.';\n\t\tthis.errors['user status is invalid'] = 'Invalid user status.';\n\t\tthis.errors['user status signup is invalid email not confirmed'] = 'The user you\\'ve invited has not yet confirmed their email address.';\n\t\tthis.errors['notification not supported'] = 'Push notifications are not supported in this browser.';\n\t\tthis.errors['account license expired'] = 'Account License has expired. Please visit the Subscription page for more details and license renewal.';\n\t\tthis.errors['invalid account license'] = 'Account License is invalid. Please visit the Subscription page for more details and license renewal.';\n\t\tthis.errors['unauthorized access role'] = 'Unauthorized access role.';\n\t\tthis.errors['invalid file version'] = 'You have selected wrong file version.';\n\t\tthis.errors['badge number is read only'] = 'Badge number is read only from 0-6';\n\t\tthis.errors['invalid file version, invalid column number'] = 'Invalid file version, invalid column number.';\n\t\tthis.errors['preloadedCategoryId is not set'] = 'Preloaded category is not selected';\n\t\tthis.errors['schoolgroup acctnumber is required'] = 'Please select a school group that has at least one school.';\n\t\tthis.errors['school name not found'] = 'Could not find any school with this name';\n\t}\n\n\tvalidateAcctNumber(acctNumber: string): Observable {\n\t\tlet lusr = this.userRoles();\n\t\tif (lusr != null && lusr.acctNumber == acctNumber) {\n\t\t\t//return non http observable when the userroles exists at localStorage\n\t\t\treturn Observable.create((observer: Observer) => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t} else {\n\t\t\treturn this.userRolesApi().map(usr => {\n\t\t\t\tlet match = false;\n\t\t\t\tfor (var u in usr) {\n\t\t\t\t\tif (usr[u].acctNumber == acctNumber) {\n\t\t\t\t\t\tmatch = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\t\t}\n\t}\n\n\tloadUser(): Observable {\n\t\treturn this.account.getUserProfileApi()\n\t\t\t.do(us => {\n\t\t\t\tthis.account.setUser(us);\n\t\t\t})\n\t\t\t.mergeMap(() => {\n\t\t\t\treturn this.userRolesApi()\n\t\t\t\t\t.map(urs => {\n\t\t\t\t\t\tthis.setUserRoles(urs[0]);\n\t\t\t\t\t\treturn urs[0]\n\t\t\t\t\t});\n\t\t\t});\n\t}\n\n\tremoveLocalStorage() {\n\t\tlocalStorage.removeItem(this.userRolesKey);\n\t}\n\n\t// reason why we changed from storing to memory to storing on localStorage\n\t// is because users are refreshing the page and they lost the school they have selected\n\t// refresh page is taking the default school not the one they have selected from the list\n\tsetUserRoles(us: UserRoles) {\n\t\tlocalStorage.setItem(this.userRolesKey, JSON.stringify(us));\n\t}\n\n\tuserRoles() {\n\t\tif (localStorage.getItem(this.userRolesKey) === null) {\n\t\t\treturn null\n\t\t}\n\t\treturn JSON.parse(localStorage.getItem(this.userRolesKey));\n\t}\n\n\tcontainsUserRole(ur: UserRoles, role: string): boolean {\n\t\tfor (var r in ur.roles) {\n\t\t\tif (ur.roles[r] == role) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tgetToken() {\n\t\tlet t = this.account.getToken();\n\t\tif (!t) {\n\t\t\tt = new Token();\n\t\t}\n\t\treturn t;\n\t}\n\n\tgetError(err: any): Error {\n\t\tvar er: any;\n\t\tvar msg = 'no connection';\n\t\tif (typeof (err.json) === 'function') {\n\t\t\ter = err.json();\n\t\t\tif (er.message != null && er.message != null && er.message != '') {\n\t\t\t\tmsg = er.message;\n\t\t\t} else if (er.error != null && er.error != null && er.error != '') {\n\t\t\t\tmsg = er.error;\n\t\t\t} else {\n\t\t\t\tconsole.log(err);\n\t\t\t}\n\t\t\treturn new Error(msg);\n\t\t} else if (err instanceof Error) {\n\t\t\treturn err;\n\t\t} else {\n\t\t\tconsole.log(err);\n\t\t}\n\t}\n\n\tgetUserError(err: Error): string {\n\t\treturn this.errors[err.message];\n\t}\n\n\tisErrNotFound(err: Error): boolean {\n\t\treturn err.message == 'not found';\n\t}\n\n\tisErrUnauthorized(err: Error): boolean {\n\t\treturn err.message == 'unauthorized' ||\n\t\t\terr.message == 'unauthorized access role';\n\t}\n\n\tgetUserErrorDefault(err: Error): string {\n\t\tlet e = this.errors[err.message];\n\t\tif (e != null) {\n\t\t\treturn e;\n\t\t}\n\t\treturn this.errors['default'];\n\t}\n\n\tbuildUrl(parameters) {\n\t\tvar qs = \"\";\n\t\tfor (var key in parameters) {\n\t\t\tvar value = parameters[key];\n\t\t\tif (value != null && value != '') {\n\t\t\t\tqs += encodeURIComponent(key) + \"=\" + encodeURIComponent(value) + \"&\";\n\t\t\t}\n\t\t}\n\t\tif (qs.length > 0) {\n\t\t\treturn qs.substring(0, qs.length - 1); //chop off last \"&\"\n\t\t}\n\t\treturn '';\n\t}\n\n\tparams(parameters) {\n\t\tvar params: any = {}\n\t\tfor (var key in parameters) {\n\t\t\tvar value = parameters[key];\n\t\t\tif (value != null && value != '') {\n\t\t\t\tparams[encodeURIComponent(key)] = encodeURIComponent(value);\n\t\t\t}\n\t\t}\n\t\treturn params;\n\t}\n\n\tleftPad(val: string, size: number, ch: string): string {\n\t\tvar result = String(val);\n\t\tif (!ch) {\n\t\t\tch = \" \";\n\t\t}\n\t\twhile (result.length < size) {\n\t\t\tresult = ch + result;\n\t\t}\n\t\treturn result;\n\t}\n\thexToInt(hex) {\n\t\tif (hex.length % 2 != 0) {\n\t\t\thex = \"0\" + hex;\n\t\t}\n\t\tvar num = parseInt(hex, 16);\n\t\tvar maxVal = Math.pow(2, hex.length / 2 * 8);\n\t\tif (num > maxVal / 2 - 1) {\n\t\t\tnum = num - maxVal\n\t\t}\n\t\treturn num;\n\t}\n\n\thexAcctNumber(num: number): string {\n\t\t//sign >>> is Zero-fill right shift\n\t\treturn this.leftPad((num >>> 0).toString(16), 8, '0').toUpperCase();\n\t}\n\n\t// APIs\n\tuserRolesApi(): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.get(this.config.districtApiUrl + '/districts/user/roles', { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json().list;\n\t\t\t\t\tvar urs: UserRoles[] = [];\n\t\t\t\t\tfor (var v in data) {\n\t\t\t\t\t\turs.push({\n\t\t\t\t\t\t\tacctNumber: this.hexAcctNumber(data[v].acctNumber),\n\t\t\t\t\t\t\tschoolName: data[v].schoolName,\n\t\t\t\t\t\t\tisDefault: data[v].isDefault,\n\t\t\t\t\t\t\troles: data[v].roles,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\treturn urs\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tsetDefaultApi(req: UserRoles): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\tvar acctNumber = req.acctNumber;\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.put(this.config.districtApiUrl + '/districts/' + acctNumber + '/user/role/default', req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tupdateDistrictUserApi(acctNumber: string, req: DistrictUser): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tlet rq = JSON.stringify({ roles: req.roles });\n\t\treturn this.http.put(this.config.districtApiUrl + '/districts/' + acctNumber + '/user/' + req.userId + '/role', rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tdistrictUsersApi(acctNumber: string): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tvar params: any = {};\n\t\treturn this.http.get(this.config.districtApiUrl + '/districts/' + acctNumber + '/users', { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tvar rows: DistrictUser[] = [];\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json().list;\n\t\t\t\t\tfor (var i in data) {\n\t\t\t\t\t\tlet row = new DistrictUser();\n\t\t\t\t\t\trow.userId = data[i].userId;\n\t\t\t\t\t\trow.firstName = data[i].firstName;\n\t\t\t\t\t\trow.lastName = data[i].lastName;\n\t\t\t\t\t\trow.email = data[i].email;\n\t\t\t\t\t\trow.status = data[i].status;\n\t\t\t\t\t\trow.owner = data[i].owner;\n\t\t\t\t\t\tif (data[i].roles.length > 0) {\n\t\t\t\t\t\t\tfor (var j in data[i].roles) {\n\t\t\t\t\t\t\t\trow.roles.push(data[i].roles[j]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\trows.push(row)\n\t\t\t\t\t}\n\t\t\t\t\treturn rows\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn rows;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tinviteDistrictUserApi(acctNumber: string, req: InviteUser): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tlet rq = JSON.stringify({ email: req.email });\n\t\treturn this.http.post(this.config.districtApiUrl + '/districts/' + acctNumber + '/user/invite', rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json()\n\t\t\t\t\tlet row = new DistrictUser();\n\t\t\t\t\trow.userId = data.userId;\n\t\t\t\t\trow.firstName = data.firstName;\n\t\t\t\t\trow.lastName = data.lastName;\n\t\t\t\t\trow.email = data.email;\n\t\t\t\t\trow.status = data.status;\n\t\t\t\t\trow.roles = data.roles;\n\t\t\t\t\trow.owner = data.owner;\n\n\t\t\t\t\treturn row;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tremoveDistrictUserApi(acctNumber: string, req: DistrictUser): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(this.config.districtApiUrl + '/districts/' + acctNumber + '/user/' + req.userId + '/role', { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tsubscriptionApi(acctNumber: string): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.get(this.config.districtApiUrl + '/districts/' + acctNumber + '/subscription', { headers: headers })\n\t\t\t.timeout(this.timeout * 10)\n\t\t\t.map(resp => {\n\t\t\t\tvar row: SubscriptionResponse = new SubscriptionResponse();\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\trow = resp.json();\n\t\t\t\t\trow.accountlicense.expirationDateValue = new Date(row.accountlicense.expirationDate);\n\t\t\t\t\trow.eregCustomerProfile.creationDateValue = new Date(row.eregCustomerProfile.creationDate);\n\t\t\t\t\treturn row\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn row;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tsubscriptionRegistrationUrlApi(acctNumber: string): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(this.config.districtApiUrl + '/district/' + acctNumber + '/subscription/registration-url', { headers: headers })\n\t\t\t.timeout(this.timeout * 10)\n\t\t\t.map(resp => {\n\t\t\t\tvar row: SubscriptionRegistrationURL = new SubscriptionRegistrationURL();\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\trow = resp.json();\n\t\t\t\t\treturn row\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn row;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\tisErrDuplicateEntry(err: Error): boolean {\n\t\treturn err.message == 'duplicate entry';\n\t}\n\n\tisErrNoConnection(err: Error): boolean {\n\t\treturn err.message == 'no connection';\n\t}\n\n\tisErrAccountLicenseExpired(err: Error): boolean {\n\t\treturn err.message == 'account license expired';\n\t}\n\n\tisErrAccountLicenseInvalid(err: Error): boolean {\n\t\treturn err.message == 'invalid account license';\n\t}\n\n\tgetDefaultSaveMessage(): string {\n\t\treturn \"Successfully​ Saved\";\n\t}\n\n\toauthTokenApi(req: OAuthTokenRequest): Observable {\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\tlet rq = JSON.stringify(req);\n\n\t\t// true at the end means skipping the http interception\n\t\treturn this.http.post(`${this.config.districtApiUrl}/oauth2/token`, rq, { headers: headers }, true)\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\t//Account Association API\n\taccountAssociationFindApi(parentacctNumber: string): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.get(this.config.districtApiUrl + '/districts/' + parentacctNumber + '/account-association/find', { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tvar rows: AssociateAccount[] = [];\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json().list;\n\t\t\t\t\tfor (var i in data) {\n\t\t\t\t\t\tlet row = new AssociateAccount();\n\t\t\t\t\t\trow.acctNumber = data[i].acctNumber;\n\t\t\t\t\t\trow.parentAccountNumber = data[i].parentAccountNumber;\n\t\t\t\t\t\trow.organizationName = data[i].organizationName;\n\t\t\t\t\t\trow.state = data[i].state;\n\t\t\t\t\t\trow.zipCode = data[i].zipCode;\n\t\t\t\t\t\trow.enabled = data[i].enabled;\n\t\t\t\t\t\trow.joinedAt = new Date(data[i].joinedAt);\n\t\t\t\t\t\trows.push(row)\n\t\t\t\t\t}\n\t\t\t\t\treturn rows\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn rows;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\taccountAssociationAssociateApi(acctNumber: string, req: AssociateAccountBatch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(this.config.districtApiUrl + '/districts/' + acctNumber + '/account-association/associate', req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar ret = resp.json();\n\t\t\t\t\treturn ret.status;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\taccountAssociationCountApi(acctNumber: string): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.get(this.config.districtApiUrl + '/districts/' + acctNumber + '/account-association/count', { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar number = resp.json();\n\t\t\t\t\treturn number;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn observableThrowError(er);\n\t\t\t});\n\t}\n\n\t// NoGo enhance API\n\tnoGoEnhanceExportCsvApi(acctNumber: string, req: NoGoEnhanceExportCSV): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/export/csv`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t\t// return observableThrowError();\n\t\t\t});\n\t}\n\tnoGoEnhanceFileDownloadJsonUrl(acctNumber: string, jsonUrl: string): Observable {\n\t\treturn this.http.get(jsonUrl)\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tlet data = resp.json();\n\t\t\t\t\treturn data.url;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceSearchApi(acctNumber: string, req: NoGoEnhanceTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tlet rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/search`, rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tlet rows = resp.json().list;\n\t\t\t\t\tfor (let r of rows) {\n\t\t\t\t\t\tr.dateOfBirth = rfc3339ToDate(r.dateOfBirth);\n\t\t\t\t\t\tif (!isDateSet(r.dateOfBirth)) {\n\t\t\t\t\t\t\tr.dateOfBirth = null;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn rows;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceSearchCountApi(acctNumber: string, req: NoGoEnhanceTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tlet rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/search/count`, rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceAddApi(acctNumber: string, req: NoGoEnhanceRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tif (isDateSet(req.dateOfBirth)) {\n\t\t\treq.dateOfBirth = new Date(Date.UTC(req.dateOfBirth.getFullYear(), req.dateOfBirth.getMonth(), req.dateOfBirth.getDate(), 0, 0, 0, 0));\n\t\t}\n\t\tlet rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance`, rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceUpdateApi(acctNumber: string, id: number, req: NoGoEnhanceRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tif (isDateSet(req.dateOfBirth)) {\n\t\t\treq.dateOfBirth = new Date(Date.UTC(req.dateOfBirth.getFullYear(), req.dateOfBirth.getMonth(), req.dateOfBirth.getDate(), 0, 0, 0, 0));\n\t\t}\n\t\tlet rq = JSON.stringify(req);\n\t\treturn this.http.put(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/${id}`, rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceRemoveApi(acctNumber: string, id: number): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/${id}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceRemoveAllApi(acctNumber: string, req: NoGoEnhanceTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tlet rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/remove-all`, rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status != 200) {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceImportCsvUrl(acctNumber: string): string {\n\t\treturn `${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/import/csv`\n\t}\n\n\tnoGoEnhanceFindApi(acctNumber: string, req: NoGoEnhanceFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tlet rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/find`, rq, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tlet rows = resp.json().list;\n\t\t\t\t\tfor (let r of rows) {\n\t\t\t\t\t\tr.dateOfBirth = rfc3339ToDate(r.dateOfBirth);\n\t\t\t\t\t\tif (!isDateSet(r.dateOfBirth)) {\n\t\t\t\t\t\t\tr.dateOfBirth = null;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn rows;\n\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceFileUploadUrl(acctNumber: string): string {\n\t\treturn `${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/file/upload`\n\t}\n\n\tnoGoEnhanceFileRemoveApi(acctNumber: string, id: number): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/file/${id}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\tnoGoEnhanceImportCsvStatus(acctNumber: string, req: NoGoEnhanceWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/import/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tnoGoEnhanceExportCsvStatus(acctNumber: string, req: NoGoEnhanceWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/nogo-enhance/export/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\t// RFID User List API\n\trfidUsersExportCsvApi(acctNumber: string, req: RfidUsersExport): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\t// let rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/export/csv`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersImportCsvUrl(acctNumber: string): string {\n\t\treturn `${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/import/csv`\n\t}\n\n\trfidUsersRemoveApi(acctNumber: string, id: number): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/remove/${id}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersSearchApi(acctNumber: string, req: RfidUsersTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/search`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersSearchCountApi(acctNumber: string, req: RfidUsersTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\t// let rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/search/count`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersRemoveAllApi(acctNumber: string, req: RfidUsersTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\t// let rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/remove-all`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status != 200) {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersFindApi(acctNumber: string, req: RfidUsersFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\t// let rq = JSON.stringify(req);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/find`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersUpdateApi(acctNumber: string, id: number, req: RfidUsersRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\t// let rq = JSON.stringify(req);\n\t\treturn this.http.put(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/update/${id}`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersAddApi(acctNumber: string, req: RfidUsersRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/add`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersImportCsvStatus(acctNumber: string, req: RfidUserListWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/import/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\trfidUsersExportCsvStatus(acctNumber: string, req: RfidUserListWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tvar params: any = {};\n\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/rfid-user-list/export/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\t//preloadedCategory\n\tpreloadedCategoriesApi(acctNumber: string, req: FindPreloadedCategory): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\tvar params: any = {};\n\t\tparams['pageSize'] = req.pageSize;\n\t\tparams['page'] = req.page;\n\t\tif (req.preloadedCategoryId) {\n\t\t\tparams['preloadedCategoryId'] = req.preloadedCategoryId;\n\t\t}\n\t\tif (req.preloadedCategoryName) {\n\t\t\tparams['preloadedCategoryName'] = req.preloadedCategoryName;\n\t\t}\n\t\tlet q: string = this.buildUrl(params);\n\t\treturn this.http.get(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-categories?${q}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tvar row: PreloadedCategory[] = [];\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\trow = resp.json().list;;\n\t\t\t\t\treturn row\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn row;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log('error here');\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategorySearchApi(acctNumber: string, req: PreloadedCategoryTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/search`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategorySearchCountApi(acctNumber: string, req: PreloadedCategoryTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/search/count`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryAddApi(acctNumber: string, req: PreloadedCategoryRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryUpdateApi(acctNumber: string, id: number, req: PreloadedCategoryRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.put(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/${id}`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryRemoveApi(acctNumber: string, id: number): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/${id}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryRemoveAllApi(acctNumber: string, req: PreloadedCategoryTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/remove-all`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status != 200) {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryExportCsvApi(acctNumber: string, req: PreloadedCategoryExport): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/export/csv`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryImportCsvUrl(acctNumber: string): string {\n\t\treturn `${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/import/csv`\n\t}\n\n\tpreloadedCategoryFindApi(acctNumber: string, req: PreloadedCategoryFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/find`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryImportCsvStatus(acctNumber: string, req: PreloadedCategoryWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/import/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedCategoryExportCsvStatus(acctNumber: string, req: PreloadedCategoryWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/preloaded-list-category/export/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\t//Other Preloaded List\n\tpreloadedSearchApi(acctNumber: string, req: PreloadedTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/search`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedSearchCountApi(acctNumber: string, req: PreloadedTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/search/count`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedAddApi(acctNumber: string, req: PreloadedRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedUpdateApi(acctNumber: string, id: number, req: PreloadedRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.put(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/${id}`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedRemoveApi(acctNumber: string, id: number): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/${id}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedRemoveAllApi(acctNumber: string, req: PreloadedTextSearch): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/remove-all`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status != 200) {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedExportCsvApi(acctNumber: string, req: PreloadedExport): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/export/csv`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedImportCsvUrl(acctNumber: string): string {\n\t\treturn `${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/import/csv`\n\t}\n\n\tpreloadedFindApi(acctNumber: string, req: PreloadedFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/find`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedImportCsvStatus(acctNumber: string, req: PreloadedWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/import/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tpreloadedExportCsvStatus(acctNumber: string, req: PreloadedWorkerStatus): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/other-preloaded-list/export/csv/status`, req, { headers: headers })\n\t\t\t.timeout(30000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\t//SchoolGroup\n\tschoolGroupAddApi(acctNumber: string, req: SchoolGroup): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/add`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\n\t}\n\n\tschoolGroupFindApi(acctNumber: string, req: SchoolGroupFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/find`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\tschoolGroupFindAccountsV2Api(acctNumber: string, req: SchoolGroupFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/find/accounts`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\tschoolGroupFindCountApi(acctNumber: string, req: SchoolGroupFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/count`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json();\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tschoolGroupUpdateApi(acctNumber: string, req: SchoolGroup): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/update/${req.schoolGroupID}`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tschoolGroupRemoveApi(acctNumber: string, req: SchoolGroup): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/remove/${req.schoolGroupID}`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json();\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tschoolGroupFindAccountsV2DistinctApi(acctNumber: string, req: SchoolGroupFind): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/school-group/find/accounts/distinct`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tbadgeAddApi(acctNumber: string, req: Badge): Observable{\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/badge`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json();\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tbadgeUpdateApi(acctNumber: string, req: Badge): Observable{\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.put(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/badge/${req.id}`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json();\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tbadgeFindApi(acctNumber: string, req: FindBadge): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/badge/find`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tbadgeFindCountApi(acctNumber: string, req: FindBadge): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/badge/find/count`, req, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tbadgeDeleteApi(acctNumber: string, id: number): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.delete(`${this.config.districtApiUrl}/districts/${acctNumber}/settings/badge/${id}`, { headers: headers })\n\t\t\t.timeout(this.timeout)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json().list;\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tactivityReportPdf(acctNumber: string, req: ActivityReportPDFRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(this.config.districtApiUrl + '/districts/' + acctNumber + '/reports/activity/export/pdf' , req, { headers: headers })\n\t\t\t.timeout(35000)\n\t\t\t.map(resp => {\n\t\t\t\tvar row: ActivityReportPDF = new ActivityReportPDF();\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json()\n\t\t\t\t\trow.downloadUrls = data.downloadUrls;\n\t\t\t\t\trow.requestId = data.requestId;\n\t\t\t\t\treturn row\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn row;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tactivityReportCsv(acctNumber: string, req: ActivityReportCSVRequest): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(this.config.districtApiUrl + '/districts/' + acctNumber + '/reports/activity/export/csv',req, { headers: headers })\n\t\t\t.timeout(35000)\n\t\t\t.map(resp => {\n\t\t\t\tvar row: ActivityReportCSV = new ActivityReportCSV();\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json()\n\t\t\t\t\trow.downloadUrls = data.downloadUrls;\n\t\t\t\t\trow.requestId = data.requestId;\n\t\t\t\t\treturn row\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\tconsole.log('404');\n\t\t\t\t\treturn row;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tcountActivityReportApi(acctNumber: string, req: FindActivityReport): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/reports/activity/count`,req, { headers: headers })\n\t\t\t.timeout(35000)\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tlet data = resp.json()\n\t\t\t\t\treturn parseInt(data.count)\n\t\t\t\t} else if (resp.status == 404) {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tactivityReportApi(acctNumber: string, req: FindActivityReport): Observable {\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(this.config.districtApiUrl + '/districts/' + acctNumber + '/reports/activity', req, { headers: headers })\n\t\t\t.timeout(35000)\n\t\t\t.map(resp => {\n\t\t\t\tvar rows: ActivityReportRow[] = [];\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\tvar data = resp.json().list\n\t\t\t\t\tfor (var v in data) {\n\t\t\t\t\t\tvar row: ActivityReportRow = new ActivityReportRow();\n\t\t\t\t\t\trow.id = data[v].id;\n\t\t\t\t\t\trow.name = data[v].name;\n\t\t\t\t\t\trow.badgeName = data[v].badgeName;\n\t\t\t\t\t\trow.loginTime = rfc3339ToDate(data[v].loginTime);\n\t\t\t\t\t\tif (isDateSet(rfc3339ToDate(data[v].logoutTime))) {\n\t\t\t\t\t\t\trow.logoutTime = rfc3339ToDate(data[v].logoutTime);\n\t\t\t\t\t\t}\n\t\t\t\t\t\trow.additionalInfo1 = data[v].additionalInfo1;\n\t\t\t\t\t\trow.additionalInfo2 = data[v].additionalInfo2;\n\t\t\t\t\t\trow.additionalInfo3 = data[v].additionalInfo3;\n\t\t\t\t\t\trow.additionalInfo4 = data[v].additionalInfo4;\n\t\t\t\t\t\tif (data[v].images) {\n\t\t\t\t\t\t\trow.images = [];\n\t\t\t\t\t\t\tfor (var i in data[v].images) {\n\t\t\t\t\t\t\t\trow.images.push({ imgType: data[v].images[i].type, link: data[v].images[i].link });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\trow.images = [];\n\t\t\t\t\t\t}\n\t\t\t\t\t\trow.loginLocationId = data[v].loginLocationId;\n\t\t\t\t\t\tif (data[v].logoutLocationId) {\n\t\t\t\t\t\t\trow.logoutLocationId = data[v].logoutLocationId;\n\t\t\t\t\t\t}\n\t\t\t\t\t\trow.schoolName = data[v].schoolName;\n\t\t\t\t\t\trow.stationName = data[v].stationName;\n\t\t\t\t\t\trow.badgeId = data[v].badgeId;\n\t\t\t\t\t\tif(data[v].dataSource){\n\t\t\t\t\t\t\tif(data[v].dataSource.student){\n\t\t\t\t\t\t\t\trow.dataSource.student.studentId = data[v].dataSource.student.studentId;\n\t\t\t\t\t\t\t\trow.dataSource.student.sisStudentId = data[v].dataSource.student.sisStudentId;\n\t\t\t\t\t\t\t\trow.dataSource.student.field1 = data[v].dataSource.student.field1;\n\t\t\t\t\t\t\t\trow.dataSource.student.field2 = data[v].dataSource.student.field2;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif(data[v].dataSource.rfidUser){\n\t\t\t\t\t\t\t\trow.dataSource.rfidUser.cardId = data[v].dataSource.rfidUser.cardId;\n\t\t\t\t\t\t\t\trow.dataSource.rfidUser.field1 = data[v].dataSource.rfidUser.field1;\n\t\t\t\t\t\t\t\trow.dataSource.rfidUser.field2 = data[v].dataSource.rfidUser.field2;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif(data[v].dataSource.studentContact){\n\t\t\t\t\t\t\t\trow.dataSource.studentContact.cardId = data[v].dataSource.studentContact.cardId;\n\t\t\t\t\t\t\t\trow.dataSource.studentContact.name = data[v].dataSource.studentContact.name;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif(data[v].dataSource.preloaded){\n\t\t\t\t\t\t\t\trow.dataSource.preloaded.field1 = data[v].dataSource.preloaded.field1;\n\t\t\t\t\t\t\t\trow.dataSource.preloaded.field2 = data[v].dataSource.preloaded.field2;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\trows.push(row);\n\t\t\t\t\t}\n\t\t\t\t\treturn rows\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tactivityReportExportCSVStatus(acctNumber: string,req: ActivityReportExportCSVStatusRequest){\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/reports/activity/export/csv/status`, req, { headers: headers })\n\t\t\t.timeout(35000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\tactivityReportExportPDFStatus(acctNumber: string,req: ActivityReportExportPDFStatusRequest){\n\t\tvar token = this.getToken();\n\t\tvar headers = new Headers();\n\t\theaders.append('Content-Type', 'application/json');\n\t\theaders.append('Authorization', token.tokenType + ' ' + token.accessToken);\n\t\treturn this.http.post(`${this.config.districtApiUrl}/districts/${acctNumber}/reports/activity/export/pdf/status`, req, { headers: headers })\n\t\t\t.timeout(35000)\n\t\t\t.retryWhen(error => this.httpRetry(error))\n\t\t\t.map(resp => {\n\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\treturn resp.json()\n\t\t\t\t} else {\n\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tlet er = this.getError(err);\n\t\t\t\treturn Observable.throw(er);\n\t\t\t});\n\t}\n\n\thttpRetry(o: Observable): Observable {\n\t\treturn o\n\t\t\t.flatMap((error: any) => {\n\t\t\t\treturn Observable.of(error).delay(this.delay);\n\t\t\t})\n\t\t\t.take(this.retry)\n\t\t\t.concat(Observable.throw(this.getError(o)));\n\t}\n}\n\nexport function districtServiceFactory(\n\thttp: HttpService,\n\taccount: Account,\n\tconfig: Config\n) {\n\treturn (environment.isMoc) ? new DistrictServiceMoc(http, account, config) : new DistrictService(http, account, config);\n}\n","export class DistrictUser {\n\troles: string[];\n\tuserId: string;\n\tfirstName: string;\n\tlastName: string;\n\temail: string;\n\topenAddRole: boolean; //from js\n\tstatus: string;\n\towner: string;\n\n\tconstructor() {\n\t\tthis.roles = [];\n\t\tthis.userId = '';\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.email = '';\n\t\tthis.openAddRole = false;\n\t\tthis.status = '';\n\t\tthis.owner = '';\n\t}\n}\n","export function elapsedHoursMinutes(startDate: Date, endDate: Date): Elapsed {\n let st = startDate;\n let et = endDate;\n //get minutes\n let timeDiff = et.getTime() - st.getTime();\n // strip the miliseconds\n timeDiff /= 1000;\n // get seconds\n let seconds = Math.round(timeDiff % 60);\n // remove seconds from the date\n timeDiff = Math.round(timeDiff / 60);\n // get minutes\n let minutes = Math.round(timeDiff % 60);\n // remove minutes from the date\n timeDiff = Math.floor(timeDiff / 60);\n // get hours\n let hours = Math.round(timeDiff % 24);\n return new Elapsed(0, hours, minutes, 0);\n}\n\nexport function elapsedDaysHoursMinutes(startDate: Date, endDate: Date): Elapsed {\n let st = startDate;\n let et = endDate;\n //get minutes\n let timeDiff = et.getTime() - st.getTime();\n // strip the miliseconds\n timeDiff /= 1000;\n // get seconds\n let seconds = Math.round(timeDiff % 60);\n // remove seconds from the date\n timeDiff = Math.round(timeDiff / 60);\n // get minutes\n let minutes = Math.round(timeDiff % 60);\n // remove minutes from the date\n timeDiff = Math.floor(timeDiff / 60);\n // get hours\n let hours = Math.round(timeDiff % 24);\n\n timeDiff = Math.round(timeDiff / 24);\n\n let days = timeDiff;\n return new Elapsed(days, hours, minutes, 0);\n}\n\nexport class Elapsed {\n days: number;\n hours: number;\n minutes: number;\n seconds: number;\n\n constructor(days: number, hours: number, minutes: number, seconds: number) {\n this.days = days;\n this.hours = hours;\n this.minutes = minutes;\n this.seconds = seconds;\n }\n}\n","\n
\n
\n
","import { Component } from '@angular/core';\n\n@Component({\n selector: 'district-footer',\n template: `\n
\n
\n
`\n})\n\nexport class FooterComponent {\n today: number;\n constructor() {\n this.today = Date.now();\n }\n}\n","\nimport {throwError as observableThrowError, Observable } from 'rxjs';\nimport { Http, Request, RequestOptions, RequestOptionsArgs, Response, ConnectionBackend, Headers } from \"@angular/http\";\nimport \"rxjs/add/observable/fromPromise\";\nimport \"rxjs/add/operator/mergeMap\";\n\nimport { Account } from './account.service';\nimport { Token } from './token';\nimport { Config } from './config';\nimport { TokenHelper } from './token_helper';\nimport { Injector, Injectable } from '@angular/core';\nimport { OAuthToken } from './oauth-token';\n\n\nexport interface InterceptorConfigOptional {\n\theaderName?: string;\n\theaderPrefix?: string;\n\tnoTokenError?: boolean;\n}\n\nconst DEFAULT_HEADER_NAME = 'Authorization';\nconst DEFAULT_HEADER_PREFIX_BEARER = 'Bearer';\n\nexport class InterceptorConfig {\n\n\theaderName: string = DEFAULT_HEADER_NAME;\n\theaderPrefix: string = DEFAULT_HEADER_PREFIX_BEARER;\n\tnoTokenError: boolean = false;\n\n\tconstructor(config?: InterceptorConfigOptional) {\n\t\tconfig = config || {};\n\t\t(Object).assign(this, config)\n\t}\n}\n\nexport abstract class HttpInterceptor extends Http {\n\n\tprivate origRequest: Request;\n\n\tconstructor(backend: ConnectionBackend, defaultOptions: RequestOptions, private config: InterceptorConfig) {\n\t\tsuper(backend, defaultOptions);\n\t}\n\n\tprivate getRequestOptionArgs(options?: RequestOptionsArgs): RequestOptionsArgs {\n\t\tif (options == null) {\n\t\t\toptions = new RequestOptions();\n\t\t}\n\t\tif (options.headers == null) {\n\t\t\toptions.headers = new Headers();\n\t\t}\n\t\toptions.headers.append('Content-Type', 'application/json');\n\t\treturn options;\n\t}\n\n\tprotected requestWithToken(req: Request, token: Token): Observable {\n\t\tthis.origRequest = req;\n\t\tif (!this.config.noTokenError && !token) {\n\t\t\treturn observableThrowError(new Error('No authorization token given'));\n\t\t} else {\n\t\t\treq.headers.set(this.config.headerName, this.config.headerPrefix + ' ' + token.accessToken);\n\t\t}\n\n\t\treturn super.request(req);\n\t}\n\n\trequest(url: string | Request, options?: RequestOptionsArgs): Observable {\n\t\tif (typeof url === 'string') {\n\t\t\treturn this.get(url, options);\n\t\t}\n\t\tlet req: Request = url as Request;\n\t\tlet token = this.getToken();\n\t\treturn token.mergeMap((token: Token) => this.requestWithToken(req, token));\n\t}\n\n\tget(url: string, options?: RequestOptionsArgs, noIntercept?: boolean): Observable {\n\t\tif (noIntercept) {\n\t\t\treturn super.get(url, options);\n\t\t}\n\t\treturn this.intercept(super.get(url, options));\n\t}\n\n\tpost(url: string, body: any, options?: RequestOptionsArgs, noIntercept?: boolean): Observable {\n\t\tif (noIntercept) {\n\t\t\treturn super.post(url, body, options);\n\t\t}\n\t\treturn this.intercept(super.post(url, body, this.getRequestOptionArgs(options)));\n\t}\n\n\tput(url: string, body: any, options?: RequestOptionsArgs, noIntercept?: boolean): Observable {\n\t\tif (noIntercept) {\n\t\t\treturn super.put(url, body, options);\n\t\t}\n\t\treturn this.intercept(super.put(url, body, this.getRequestOptionArgs(options)));\n\t}\n\n\tdelete(url: string, options?: RequestOptionsArgs, noIntercept?: boolean): Observable {\n\t\tif (noIntercept) {\n\t\t\treturn super.delete(url, options);\n\t\t}\n\t\treturn this.intercept(super.delete(url, options));\n\t}\n\n\tprotected intercept(observable: Observable): Observable {\n\t\treturn observable.catch((err, source) => {\n\t\t\tif (this.isErrUnauthorized(err)) {\n\t\t\t\tconsole.log(\"Unauthorised need to refresh token\");\n\n\t\t\t\t// check if we have refreshToken if yes do a refresh else return the error\n\t\t\t\treturn this.getToken()\n\t\t\t\t\t.mergeMap(tk => {\n\t\t\t\t\t\tlet t = new Token();\n\t\t\t\t\t\tif (tk) {\n\t\t\t\t\t\t\tt = tk;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (t.refreshToken !== '') {\n\n\t\t\t\t\t\t\tlet orig = this.origRequest;\n\t\t\t\t\t\t\treturn this.refreshToken()\n\t\t\t\t\t\t\t\t.catch(err => {\n\t\t\t\t\t\t\t\t\t// check in case of an error could not get token due to deletion or token into db\n\t\t\t\t\t\t\t\t\tif (err.message && err.message.indexOf('cannot fetch token') !== -1) {\n\t\t\t\t\t\t\t\t\t\treturn observableThrowError(new Error('unauthorized'));\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn observableThrowError(err);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t.mergeMap(data => {\n\t\t\t\t\t\t\t\t\tif (data && data.accessToken) {\n\n\t\t\t\t\t\t\t\t\t\tlet th = new TokenHelper();\n\t\t\t\t\t\t\t\t\t\tt.accessToken = data.accessToken;\n\t\t\t\t\t\t\t\t\t\tt.refreshToken = data.refreshToken;\n\t\t\t\t\t\t\t\t\t\tt.tokenType = data.tokenType;\n\t\t\t\t\t\t\t\t\t\tt.expiresIn = data.expiresIn;\n\t\t\t\t\t\t\t\t\t\tt.expiresAt = th.getExpiresAt(data.expiresIn);\n\n\t\t\t\t\t\t\t\t\t\treturn this.saveToken(t);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn observableThrowError(new Error('unauthorized'));\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t.mergeMap(token => {\n\t\t\t\t\t\t\t\t\treturn this.requestWithToken(orig, token);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn observableThrowError(err);\n\t\t\t\t\t});\n\t\t\t}\n\t\t\treturn observableThrowError(err);\n\t\t});\n\t}\n\n\tprotected abstract getToken(): Observable;\n\n\tprotected abstract saveToken(token: Token): Observable;\n\n\tprotected abstract refreshToken(): Observable;\n\n\tprotected abstract isErrUnauthorized(resp: Response): boolean;\n}\n\n\n@Injectable()\nexport class HttpService extends HttpInterceptor {\n\n\tconstructor(backend: ConnectionBackend, defaultOptions: RequestOptions, private injector: Injector) {\n\t\tsuper(backend, defaultOptions, new InterceptorConfig({ noTokenError: true }));\n\t}\n\n\tprotected getToken(): Observable {\n\t\tlet t = this.account().getToken();\n\t\tif (!t) {\n\t\t\tt = new Token();\n\t\t}\n\n\t\treturn Observable.of(t);\n\t}\n\n\tprotected saveToken(token: Token): Observable {\n\t\tthis.account().setToken(token);\n\t\treturn Observable.of(token);\n\t}\n\n\tprotected refreshToken(): Observable {\n\t\treturn this.getToken()\n\t\t\t.mergeMap(t => {\n\t\t\t\treturn super.post(`${this.cfg().districtApiUrl}/oauth2/token`, { refreshToken: t.refreshToken }, null, true)\n\t\t\t\t\t.map(resp => {\n\t\t\t\t\t\tif (resp.status == 200) {\n\t\t\t\t\t\t\treturn resp.json()\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthrow this.getError(resp);\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\t.catch(err => {\n\t\t\t\t\t\tlet er = this.getError(err);\n\t\t\t\t\t\treturn observableThrowError(er);\n\t\t\t\t\t});\n\t\t\t});\n\t}\n\n\tprotected account(): Account {\n\t\treturn this.injector.get(Account);\n\t}\n\n\tprotected cfg(): Config {\n\t\treturn this.injector.get(Config);\n\t}\n\n\tprotected isErrUnauthorized(resp: Response): boolean {\n\t\tlet err = this.getError(resp);\n\t\tif (err.message == 'unauthorized') {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate getError(err: any): Error {\n\t\tvar er: any;\n\t\tvar msg = 'no connection';\n\t\tif (typeof (err.json) === 'function') {\n\t\t\ter = err.json();\n\t\t\tif (er.message != null && er.message != null && er.message != '') {\n\t\t\t\tmsg = er.message;\n\t\t\t} else if (er.error != null && er.error != null && er.error != '') {\n\t\t\t\tmsg = er.error;\n\t\t\t} else {\n\t\t\t\tconsole.log(err);\n\t\t\t}\n\t\t\treturn new Error(msg);\n\t\t} else if (err instanceof Error) {\n\t\t\treturn err;\n\t\t} else {\n\t\t\tconsole.log(err);\n\t\t}\n\t}\n}\n\n\nexport function getHttpService(backend: ConnectionBackend, defaultOptions: RequestOptions, injector: Injector) {\n\treturn new HttpService(backend, defaultOptions, injector);\n}\n","export class InviteUser {\n\temail: string;\n\n\tconstructor() {\n\t this.email = '';\n\t}\n }\n","
\n \n
","/// \nimport { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from './title';\nimport { Account, validateToken } from './account.service';\nimport { DistrictService } from './district.service';\nimport { Alert } from './alert';\nimport { Config } from './config';\nimport { AppService } from './app.service';\n\n@Component({\n\tselector: 'login',\n\ttemplate:\n\t\t`
\n \n
`\n})\n\nexport class LoginComponent implements OnInit, OnDestroy {\n\tpublic msg: Alert;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate title: AppTitle,\n\t\tprivate account: Account,\n\t\tprivate dvc: DistrictService,\n\t\tprivate config: Config,\n\t\tprivate app: AppService,\n\t) {\n\t\tthis.msg = new Alert();\n\t\ttitle.setTitles({ title: 'Login', dashboard: 'Login' });\n\t\ttitle.setBreadcrumbs([\n\t\t\t{ title: 'Login', link: '' }\n\t\t]);\n\t}\n\n\tngOnInit() {\n\t\tlet gotopage = this.config.goToPage();\n\n\t\tif (validateToken()) {\n\n\t\t\tthis.dvc.loadUser().subscribe(ur => {\n\n\t\t\t\tlet usr = this.dvc.userRoles();\n\t\t\t\tlet us = this.account.getUser();\n\t\t\t\tif (usr == null && us == null) {\n\t\t\t\t\tthis.msg.error('You don\\'t have access to this page.');\n\n\t\t\t\t\t// in case user login and token has being stored into localStorage but since this user is not allowed to view this page\n\t\t\t\t\t// and there is no logout link, we need to remove token and other kyes from localStorage for security reasons\n\t\t\t\t\tthis.account.removeLocalStorage();\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// trigger app component to reload some of the ui parts\n\t\t\t\tthis.app.onLoadApp.emit(null);\n\n\t\t\t\tif (!gotopage) {\n\t\t\t\t\tthis.router.navigateByUrl('/settings/' + ur.acctNumber);\n\t\t\t\t} else {\n\t\t\t\t\tthis.router.navigateByUrl(gotopage);\n\t\t\t\t}\n\n\t\t\t}, err => {\n\t\t\t\tif (err.message == 'unauthorized') {\n\t\t\t\t\tthis.msg.error('You don\\'t have access to this page.');\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error('There is an error when processing this request, please try again.');\n\t\t\t\t}\n\t\t\t});\n\n\t\t} else {\n\t\t\tthis.msg.error('Invalid token, please logout and login again.');\n\t\t}\n\t}\n\n\tngOnDestroy() {\n\t\tthis.config.removeLocalStorage();\n\t}\n}\n","export class OAuthTokenRequest {\n\trefreshToken: string;\n\n\tconstructor() {\n\t\tthis.refreshToken = '';\n\t}\n}\n","export class OAuthToken {\n\trefreshToken: string;\n\taccessToken: string;\n\texpiresIn: number;\n\ttokenType: string;\n\n\tconstructor() {\n\t\tthis.refreshToken = '';\n\t\tthis.accessToken = '';\n\t\tthis.expiresIn = 0;\n\t\tthis.tokenType = '';\n\t}\n}\n","import { Token } from './token';\n\nexport class OAuthResponse {\n\taccessToken: string;\n\ttokenType: string;\n\tstate: string;\n\tscope: string;\n\texpiresIn: number;\n\texpiresAt: Date;\n\trefreshToken: string;\n\tconstructor() {\n\t\tthis.accessToken = '';\n\t\tthis.tokenType = '';\n\t\tthis.state = '';\n\t\tthis.scope = '';\n\t\tthis.expiresIn = 0;\n\t\tthis.refreshToken = '';\n\t}\n\n\tgetToken(): Token {\n\t\tlet t = new Token();\n\t\tt.accessToken = this.accessToken;\n\t\tt.tokenType = this.tokenType;\n\t\tt.state = this.state;\n\t\tt.scope = this.scope;\n\t\tt.expiresIn = this.expiresIn;\n\t\tt.expiresAt = this.expiresAt;\n\t\tt.refreshToken = this.refreshToken;\n\t\treturn t;\n\t}\n}\n","import { Directive, Host, Input } from '@angular/core';\n\n@Directive({\n selector: '[offClick]',\n host: {\n '(click)': 'onClick($event)',\n }\n})\n\nexport class OffClickDirective {\n @Input('offClick') offClickHandler;\n\n constructor() {\n }\n\n ngOnInit() {\n let self = this;\n setTimeout(() => { document.addEventListener('click', self.offClickHandler); }, 0);\n }\n\n ngOnDestroy() {\n let self = this;\n document.removeEventListener('click', self.offClickHandler);\n }\n\n onClick($event) {\n $event.stopPropagation();\n }\n}\n","\n\t
\n\t\t\n\t\t
    \n\t\t\t
  • Activity Reports\n\t\t\t\t

    View summary reports of check-ins and check-outs.

    \n\t\t\t
  • \n\t\t
\n\t
\n ","/// \nimport { OnInit, Component } from '@angular/core';\nimport { ActivatedRoute, Router} from '@angular/router';\nimport { AppTitle } from './title';\nimport { Account} from './account.service';\nimport { DistrictService, } from './district.service';\nimport { Alert } from './alert';\nimport { Config } from './config';\n\n@Component({\n\tselector: 'reports',\n\tstyles: [`\n .report-links p { font-style: italic; font-size:13px; }\n .report-links { margin:0; padding:0; list-style: none; }\n `],\n\ttemplate: `\n\t
\n\t\t\n\t\t
    \n\t\t\t
  • Activity Reports\n\t\t\t\t

    View summary reports of check-ins and check-outs.

    \n\t\t\t
  • \n\t\t
\n\t
\n `\n})\n\nexport class ReportsComponent implements OnInit {\n\tmsg: Alert;\n\tacctNumber: string;\n\tconstructor(private router: Router, private title: AppTitle, private account: Account, private activatedRoute: ActivatedRoute, private config: Config, private svc: DistrictService) {\n\t\tthis.msg = new Alert();\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.title.setTitles({ title: 'Reports', dashboard: 'Reports' });\n\t\tthis.title.setBreadcrumbs([{ title: 'Reports', link: '' }]);\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(\"You don't have access to this district number \" + this.acctNumber);\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tthis.msg.error('There is an error when processing this request, please try again.');\n\t\t\t\t});\n\t\t}\n\t}\n}\n","\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n

From Date

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

To Date

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Name

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Badge Names (Comma Separated)

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

Data Source

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

RFID Card

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 2

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Student ID

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 2

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 2

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Card ID

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Name

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Additional Info

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Occurrences

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Select Order By

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Sort Type

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

School Name

\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
  • TSV
  • \n\t\t\t\t\t\t\t\t
  • CSV
  • \n\t\t\t\t\t\t\t\t
  • PDF
  • \n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t{{expandCollapseName}}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
0\" style=\"\">\n\t\t
\n\t\t\t\n\t\t\t\n\t\t\t{{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n\t\t\t\n\t\t\t\n\t\t
\n\t
\n ","///\nimport { OnInit, Component, OnDestroy } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { AlertDirective } from '../alert.directive';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { validateToken } from '../account.service';\nimport { OffClickDirective } from \"../off_click.directive\";\nimport { UserRoles } from '../user_roles';\nimport { elapsedDaysHoursMinutes } from '../elapsed';\nimport { DropdownOption } from '../dropdown_option';\n\nimport { ActivityReportPDF } from './activity_report_pdf';\nimport { ActivityReportPDFRequest } from './activity_report_pdf_request';\nimport { ActivityReportCSV } from './activity_report_csv';\nimport { ActivityReportCSVRequest } from './activity_report_csv_request';\nimport { ActivityReportRow } from './activity_report_row';\nimport { FindActivityReport } from './find_activity_report';\nimport { ActivityReportCardViewComponent } from './activity_report_card_view.component';\nimport { ActivityReportTableViewComponent } from './activity_report_table_view.component';\nimport { slashDateToDate, dateFormat, isDateSet } from '../date_helper';\n\nimport { SchoolGroup } from '../settings/school_group';\nimport { SchoolGroupFind } from '../settings/find_school_group';\nimport { RootSchoolGroupAccountV2 } from '../settings/school_group v2';\nimport { ActivityReportDataSource } from './activity_report_data_source';\nimport { ActivityReportFilters } from './activity_report_filter';\nimport { ActivityReportExportCSVStatusRequest } from './activity_report_export_csv_worker_status_request';\nimport { ActivityReportExportCSVWorkerStatusReply } from './activity_report_export_csv_worker_status';\n\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\nimport { ActivityReportExportPDFStatusRequest } from './activity_report_export_pdf_worker_status_request';\nimport { ActivityReportExportPDFWorkerStatusReply } from './activity_report_export_pdf_worker_status';\nimport { RootSchoolGroupAccountDistinctV2 } from '../settings/root_school_group_account_distrinct_v2';\nimport { SchoolGroupAccountOrg } from '../settings/school_group_account_org';\nimport { root } from 'rxjs/internal/util/root';\n\n@Component({\n\tselector: 'activity-report',\n\ttemplate: `\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n

From Date

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

To Date

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Name

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Badge Names (Comma Separated)

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

Data Source

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

RFID Card

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 2

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Student ID

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 2

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Field 2

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Card ID

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Name

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Additional Info

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Occurrences

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Select Order By

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Sort Type

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n

School Name

\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
  • TSV
  • \n\t\t\t\t\t\t\t\t
  • CSV
  • \n\t\t\t\t\t\t\t\t
  • PDF
  • \n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t{{expandCollapseName}}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
0\" style=\"\">\n\t\t
\n\t\t\t\n\t\t\t\n\t\t\t{{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n\t\t\t\n\t\t\t\n\t\t
\n\t
\n `,\n preserveWhitespaces:true,\n})\n\nexport class ActivityReportComponent implements OnInit, OnDestroy {\n\tprivate subscription: Subscription;\n\tprivate subscriptionQueryParams: Subscription;\n\tdata: ActivityReportRow[];\n\tcardRows: number[]; //cards rows\n\tmsg: Alert;\n\tmsgHead: Alert;\n\n\toccurrencesStr: string;\n\tacctNumber: string;\n\tnameParam: string;\n\tpageSizeParam: string;\n\tpageParam: string;\n\tadditionalInfoParam: string;\n\torderByParam: string;\n\tviewModeParam: string;\n\tshowImagesParam: string;\n\tcheckinOnlyParam: boolean;\n\tfromDateParam: string;\n\ttoDateParam: string;\n\tschoolNameParam: string;\n\n\tform: FormGroup;\n\tfobj: FindActivityReport;\n\ttypes: string[];\n\torderBys: DropdownOption[];\n\thasAccess: boolean;\n\tmaxCards: number;\n\tmaxPageSize: number;\n\texportOpen: boolean;\n\tviewMode: string;\n\tviewModeText: string;\n\tviewModeOpen: boolean;\n\tdisableNextPage: boolean;\n\trowCount: number;\n\tdisablePreviousPage: boolean;\n\tmaxExportDateRange: number;\n\terrors: any = {};\n\tshowImages: boolean;\n\ttoPage: number;\n\tfromPage: number;\n\tsortTypeParam: string;\n\tsortTypes: DropdownOption[];\n\tbadgeNames: string;\n\tbadgeNamesParam: string;\n\tdataSourceTypes: DropdownOption[];\n\tdataSourceValue: string;\n\tdataSource: ActivityReportDataSource;\n\tdataSourceStudentStdId: string;\n\n\tfilterView: boolean;\n\tfilterButtonName: string;\n\tfilterData: ActivityReportFilters;\n\n\tdataSourceRfidCardParam: string;\n\tdataSourceRfidField1Param: string;\n\tdataSourceRfidField2Param: string;\n\tdataSourcePrlField1Param: string;\n\tdataSourcePrlField2Param: string;\n\tdataSourceStdField1Param: string;\n\tdataSourceStdField2Param: string;\n\tdataSourceStdCCardIdParam: string;\n\tdataSourceStdCNameParam: string;\n\n\tfiltersParam:string;\n\n\tworkerstatus: ActivityReportExportCSVStatusRequest;\n\tworkerPdfStatus: ActivityReportExportPDFStatusRequest;\n\tselectedSchoolGroup: string;\n\tselectedSchoolGroupAccount: string;\n\tschoolGroupList: SchoolGroup[];\n\tschoolGroupAccounts: SchoolGroupAccountOrg[];\n\tisEnabledRetry: boolean;\n\ttrimLength: number;\n\texpandCollapseName:string;\n\tdisableLastPage:boolean;\n\tlastPage: number;\n\n\tconstructor(private router: Router, private svc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.exportOpen = false;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\n\t\tthis.selectedSchoolGroup = '0';\n\t\tthis.selectedSchoolGroupAccount = '0';\n\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Activity Report',\n\t\t\tdashboard: 'Activity Report'\n\t\t});\n\n\t\tthis.subscription = activatedRoute.params.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.acctNumber = params['acctNumber']\n\t\t\t}\n\t\t);\n\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.fromDateParam = params['fromDate']\n\t\t\t\tthis.toDateParam = params['toDate']\n\t\t\t\tthis.nameParam = params['name']\n\t\t\t\tthis.pageSizeParam = params['pageSize']\n\t\t\t\tthis.pageParam = params['page']\n\t\t\t\tthis.additionalInfoParam = params['additionalInfo']\n\t\t\t\tthis.occurrencesStr = params['occurrences']\n\t\t\t\tthis.orderByParam = params['orderBy']\n\t\t\t\tthis.viewModeParam = params['viewMode']\n\t\t\t\tthis.showImagesParam = params['showImages']\n\t\t\t\tthis.sortTypeParam = params['sortType']\n\t\t\t\tthis.schoolNameParam = params['schoolName']\n\t\t\t\tthis.badgeNamesParam = params['badgeNames']\n\t\t\t\tthis.checkinOnlyParam = params['checkinOnly']\n\t\t\t\tif(params['schoolGroupId'] != null && params['schoolGroupId'] != '0'){\n\t\t\t\t\tthis.selectedSchoolGroup = params['schoolGroupId']\n\t\t\t\t\tif(params['schoolAcctNumber'] != null && params['schoolAcctNumber']!= '0'){\n\t\t\t\t\t\tthis.selectedSchoolGroupAccount = params['schoolAcctNumber']\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.dataSourceValue = params['dsSource']\n\n\t\t\t\tthis.dataSourceRfidCardParam = params['dsRfidCardId']\n\t\t\t\tthis.dataSourceRfidField1Param = params['dsRfidField1']\n\t\t\t\tthis.dataSourceRfidField2Param = params['dsRfidField2']\n\n\t\t\t\tthis.dataSourcePrlField1Param = params['dsPreloadedField1']\n\t\t\t\tthis.dataSourcePrlField2Param = params['dsPreloadedField2']\n\n\t\t\t\tthis.dataSourceStudentStdId = params['dsStudentStdId'];\n\t\t\t\tthis.dataSourceStdField1Param = params['dsStudentField1'];\n\t\t\t\tthis.dataSourceStdField2Param = params['dsStudentField2'];\n\n\t\t\t\tthis.dataSourceStdCCardIdParam = params['dsStudentContactCardId'];\n\t\t\t\tthis.dataSourceStdCNameParam = params['dsStudentContactName'];\n\n\t\t\t}\n\t\t);\n\n\t\tthis.form = fb.group({\n\t\t\tfromDate: ['', Validators.compose([Validators.required, AppValidators.date])],\n\t\t\ttoDate: ['', Validators.compose([Validators.required, AppValidators.date])],\n\t\t\toccurrences: ['', AppValidators.number],\n\t\t\torderBy: [''],\n\t\t\tname: [''],\n\t\t\tbadgeNames: [''],\n\t\t\tadditionalInfo: [''],\n\t\t\tshowImages: [false],\n\t\t\tsortType: [''],\n\t\t\tcheckinOnly: [''],\n\t\t\tschoolName: [''],\n\t\t\tschoolGroup: [''],\n\t\t\tdataSourceTypes:[''],\n\t\t\tdataSourceRfidcardId:[''],\n\t\t\tdataSourceRfidfield1:[''],\n\t\t\tdataSourceRfidfield2:[''],\n\t\t\tdataSourceStudentStudentId:['', AppValidators.number],\n\t\t\tdataSourceStudentField1:[''],\n\t\t\tdataSourceStudentField2:[''],\n\t\t\tdataSourcePreloadedField1:[''],\n\t\t\tdataSourcePreloadedField2:[''],\n\t\t\tdataSourceStudentContactCardId: [''],\n\t\t\tdataSourceStudentContactName: [''],\n\t\t});\n\n\t\tthis.orderBys = [\n\t\t\t{ id: 'logintime', title: 'Login Time' },\n\t\t\t{ id: 'logouttime', title: 'Logout Time' },\n\t\t\t{ id: 'firstname', title: 'First Name' },\n\t\t\t{ id: 'lastname', title: 'Last Name' },\n\t\t\t{ id: 'field1', title: 'Additional Info 1' },\n\t\t\t{ id: 'field2', title: 'Additional Info 2' },\n\t\t\t{ id: 'field5', title: 'Additional Info 3' },\n\t\t\t{ id: 'field6', title: 'Additional Info 4' },\n\t\t];\n\t\tthis.fobj = new FindActivityReport();\n\t\tthis.cardRows = [];\n\t\tthis.maxCards = 3;\n\t\tthis.maxPageSize = 20;\n\t\tthis.fobj.pageSize = this.maxPageSize;\n\t\tthis.data = [];\n\t\tthis.viewMode = 'card';\n\t\tthis.viewModeText = 'Card View';\n\t\tthis.viewModeOpen = false;\n\t\tthis.clickedOutside = this.clickedOutside.bind(this);\n\t\tthis.rowCount = 0;\n\t\tthis.disableNextPage = true;\n\t\tthis.disablePreviousPage = true;\n\t\tthis.schoolGroupList = [];\n\t\tthis.schoolGroupAccounts = [];\n\t\tif(this.selectedSchoolGroup != null && this.selectedSchoolGroup != '0'){\n\t\t\tthis.loadSchoolGroup();\n\t\t}\n\n\t\t//including leap year\n\t\tthis.maxExportDateRange = 366;\n\t\tthis.errors['maxExportDateRange'] = 'Maximum allowed date range to be exported or viewed (card or table view) is 1 year.';\n\t\tthis.showImages = false;\n\t\tthis.fromPage = 0;\n\t\tthis.toPage = 0;\n\t\tthis.lastPage = 0;\n\t\tthis.disableLastPage = true;\n\t\tthis.sortTypes = [\n\t\t\t{ id: '', title: 'Default' },\n\t\t\t{ id: 'desc', title: 'Descending' },\n\t\t\t{ id: 'asc', title: 'Ascending' },\n\t\t];\n\t\tthis.dataSourceTypes = [\n\t\t\t{ id: 'all', title: 'All' },\n\t\t\t{ id: 'student', title: 'Students' },\n\t\t\t{ id: 'student-contact', title: 'Student Contacts'},\n\t\t\t{ id: 'rfid', title: 'RFID' },\n\t\t\t{ id: 'preloaded', title: 'Preloaded' },\n\t\t];\n\t\tif(!this.dataSourceValue){\n\t\t\tthis.dataSourceValue = 'all';\n\t\t}\n\t\tthis.dataSource = new ActivityReportDataSource();\n\t\tthis.filterView = false;\n\t\tthis.filterButtonName = 'Filters'\n\t\tthis.filterData = new ActivityReportFilters();\n\t\tthis.workerstatus = new ActivityReportExportCSVStatusRequest();\n\t\tthis.workerPdfStatus = new ActivityReportExportPDFStatusRequest();\n\t\tthis.isEnabledRetry = false;\n\t\tthis.trimLength = 13;\n\t\tthis.expandCollapseName = \"Expand Rows\"\n\t}\n\n\tngOnInit() {\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(\"You don't have access to this school number \" + this.acctNumber);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.fobj = new FindActivityReport()\n\t\tif (this.fromDateParam == null) {\n\t\t\tthis.fobj.fromDateStr = this.strNowDate();\n\t\t\tthis.fobj.toDateStr = this.strNowDate();\n\t\t\tthis.fobj.orderBy = 'logintime';\n\t\t\tthis.fobj.sortType = '';\n\t\t\tif(this.selectedSchoolGroup !== '0'){\n\t\t\t\tthis.fobj.schoolGroupId = parseInt(this.selectedSchoolGroup);\n\t\t\t}\n\t\t\tif(this.selectedSchoolGroupAccount !== '0'){\n\t\t\t\tthis.fobj.schoolAcctNumber = parseInt(this.selectedSchoolGroupAccount);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.setFormNavParams(this.fobj);\n\t\t\tthis.loadData();\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Reports', link: `/reports/${this.acctNumber}` },\n\t\t\t{ title: 'Activity Report', link: '' },\n\t\t]);\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscription.unsubscribe();\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\tclickedOutside() {\n\t\tthis.exportOpen = false;\n\t\tthis.viewModeOpen = false;\n\t}\n\n\tstrNowDate(): string {\n\t\tlet d: Date = new Date(Date.now());\n\t\treturn (\"0\" + (d.getMonth() + 1)).slice(-2) + '/' + ('0' + d.getDate()).slice(-2) + '/' + d.getFullYear();\n\t}\n\n\tview() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.fobj.page = 1; //start from page 1, this prevents the page number not equal to this new results\n\t\tthis.setNavParams(this.fobj);\n\t}\n\n\tloadData() {\n\t\tif (!this.allowToExport()) {\n\t\t\tthis.msg.error(this.errors['maxExportDateRange']);\n\t\t\tthis.clickedOutside();\n\t\t\treturn;\n\t\t}\n\t\tthis.msg.info(\"Please wait while loading...\")\n\t\tthis.isEnabledRetry = true;\n\t\tthis.fobj.schoolGroupId = parseInt(this.selectedSchoolGroup);\n\t\tthis.fobj.schoolAcctNumber = parseInt(this.selectedSchoolGroupAccount);\n\n\t\tthis.fobj.occurrences = parseInt(this.occurrencesStr);\n\t\tthis.fobj.dataSource = this.dataSource;\n\t\tthis.fobj.dataSource.source = this.dataSourceValue;\n\t\tthis.fobj.dataSource.student.studentId = 0;\n\t\tif(this.dataSourceStudentStdId){\n\t\t\tthis.fobj.dataSource.student.studentId = parseInt(this.dataSourceStudentStdId);\n\t\t}\n\t\tthis.fobj.badgeNames = [];\n\t\tif(this.badgeNames){\n\t\t\tthis.fobj.badgeNames = this.badgeNames.split(\",\");\n\t\t}\n\t\tthis.showImages = this.fobj.showImages;\n\t\tthis.data = [];\n\t\tthis.svc.activityReportApi(this.acctNumber, this.fobj).subscribe((urs: ActivityReportRow[]) => {\n\t\t\tthis.data = urs;\n\t\t\t//max cards per row\n\t\t\tlet crows = urs.length / this.maxCards;\n\t\t\tfor (var row = 0; row < crows; row++) {\n\t\t\t\tthis.cardRows.push(row);\n\t\t\t}\n\t\t\tthis.disablePreviousPage = this.fobj.page == 1;\n\t\t\tthis.maxPageSize = this.fobj.pageSize;\n\t\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t\tthis.toPage = (this.maxPageSize * (this.fobj.page));\n\t\t\t} else {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t}\n\t\t\tthis.svc.countActivityReportApi(this.acctNumber, this.fobj).subscribe((count: number) => {\n\t\t\t\tthis.rowCount = count;\n\t\t\t\tif (this.data.length < this.maxPageSize) {\n\t\t\t\t\tthis.toPage = count;\n\t\t\t\t}\n\t\t\t\tthis.disableNextPage = this.getToPage() >= count;\n\t\t\t\tthis.lastPage = Math.ceil(count/this.maxPageSize);\n\t\t\t\tthis.disableLastPage = this.getToPage() >= count;\n\t\t\t}, err => {\n\t\t\t\tthis.isEnabledRetry = false;\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t\tthis.msg.close();\n\t\t\tthis.isEnabledRetry = false;\n\t\t}, err => {\n\t\t\tthis.isEnabledRetry = false;\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.data = [];\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t}\n\t\t});\n\t}\n\n\tsetNavParams(req: FindActivityReport) {\n\t\tvar params: any = {};\n\t\tparams['fromDate'] = req.fromDateStr;\n\t\tparams['toDate'] = req.toDateStr;\n\t\tparams['name'] = req.name;\n\t\tparams['additionalInfo'] = req.additionalInfo;\n\t\tparams['occurrences'] = this.occurrencesStr;\n\t\tparams['showImages'] = req.showImages;\n\t\tparams['orderBy'] = req.orderBy;\n\t\tparams['page'] = req.page;\n\t\tparams['pageSize'] = req.pageSize;\n\t\tparams['acctNumber'] = this.acctNumber;\n\t\tparams['viewMode'] = this.viewMode;\n\t\tparams['sortType'] = req.sortType;\n\t\tparams['badgeNames'] = this.badgeNames;\n\t\tparams['checkinOnly'] = req.checkinOnly;\n\t\tif(this.selectedSchoolGroup != null && this.selectedSchoolGroup != '0'){\n\t\t\tparams['schoolGroupId'] = this.selectedSchoolGroup;\n\t\t\tif(this.selectedSchoolGroupAccount != null && this.selectedSchoolGroupAccount != '0'){\n\t\t\t\tparams['schoolName'] = req.schoolName;\n\t\t\t\tparams['schoolAcctNumber'] = this.selectedSchoolGroupAccount;\n\t\t\t}\n\t\t}\n\n\t\tparams['dsSource'] = this.dataSourceValue;\n\n\t\tparams['dsRfidCardId'] = req.dataSource.rfidUser.cardId;\n\t\tparams['dsRfidField1'] = req.dataSource.rfidUser.field1;\n\t\tparams['dsRfidField2'] = req.dataSource.rfidUser.field2;\n\n\t\tparams['dsPreloadedField1'] = req.dataSource.preloaded.field1;\n\t\tparams['dsPreloadedField2'] = req.dataSource.preloaded.field2;\n\n\t\tparams['dsStudentStdId'] = this.dataSourceStudentStdId;\n\t\tparams['dsStudentField1'] = req.dataSource.student.field1;\n\t\tparams['dsStudentField2'] = req.dataSource.student.field2;\n\n\t\tparams['dsStudentContactCardId'] = req.dataSource.studentContact.cardId;\n\t\tparams['dsStudentContactName'] = req.dataSource.studentContact.name;\n\n\n\t\tlet p = this.router.navigate(['/reports/' + this.acctNumber + '/activity-report'], { queryParams: this.svc.params(params) });\n\n\t\tp.then((_) => { this.loadData(); });\n\t}\n\n\tsetFormNavParams(f: FindActivityReport) {\n\t\tlet dec = decodeURIComponent;\n\t\tf.fromDateStr = dec(this.fromDateParam);\n\t\tf.toDateStr = dec(this.toDateParam);\n\t\tf.name = this.nameParam != null ? dec(this.nameParam) : '';\n\t\tf.additionalInfo = this.additionalInfoParam != null ? dec(this.additionalInfoParam) : '';\n\t\tf.occurrences = this.occurrencesStr != null ? parseInt(this.occurrencesStr) : 0;\n\t\tf.showImages = this.showImagesParam != null;\n\t\tf.orderBy = this.orderByParam != null ? dec(this.orderByParam) : '';\n\t\tf.pageSize = this.pageSizeParam != null ? parseInt(dec(this.pageSizeParam)) : 20;\n\t\tf.page = this.pageParam != null ? parseInt(dec(this.pageParam)) : 1;\n\t\tthis.viewMode = this.viewModeParam != null ? dec(this.viewModeParam) : 'card';\n\t\tthis.viewModeText = this.getViewModeText(this.viewMode);\n\t\tf.sortType = this.sortTypeParam != null ? dec(this.sortTypeParam) : '';\n\t\tf.schoolGroupId = parseInt(this.selectedSchoolGroup);\n\t\tf.schoolName = this.schoolNameParam != null ? dec(this.schoolNameParam) : '';\n\t\tthis.badgeNames = this.badgeNamesParam != null ? decodeURIComponent(this.badgeNamesParam) : '';\n\t\tf.badgeNames = this.badgeNames.split(\",\")\n\t\tf.checkinOnly = this.checkinOnlyParam != null;\n\t\tf.schoolAcctNumber = parseInt(this.selectedSchoolGroupAccount);\n\t\tif(this.dataSourceValue){\n\t\t\tf.dataSource.source = this.dataSourceValue;\n\t\t}\n\t\tif(this.dataSourceRfidCardParam){\n\t\t\tf.dataSource.rfidUser.cardId = this.dataSourceRfidCardParam;\n\t\t}\n\t\tif(this.dataSourceRfidField1Param){\n\t\t\tf.dataSource.rfidUser.field1 = this.dataSourceRfidField1Param;\n\t\t}\n\t\tif(this.dataSourceRfidField2Param){\n\t\t\tf.dataSource.rfidUser.field2 = this.dataSourceRfidField2Param;\n\t\t}\n\n\t\tif(this.dataSourcePrlField1Param){\n\t\t\tf.dataSource.preloaded.field1 = this.dataSourcePrlField1Param;\n\t\t}\n\t\tif(this.dataSourcePrlField2Param){\n\t\t\tf.dataSource.preloaded.field2 = this.dataSourcePrlField2Param;\n\t\t}\n\n\t\tif(this.dataSourceStudentStdId){\n\t\t\tf.dataSource.student.studentId = parseInt(this.dataSourceStudentStdId);\n\t\t}\n\t\tif(this.dataSourceStdField1Param){\n\t\t\tf.dataSource.student.field1 = this.dataSourceStdField1Param;\n\t\t}\n\n\t\tif(this.dataSourceStdCCardIdParam){\n\t\t\tf.dataSource.studentContact.cardId = this.dataSourceStdCCardIdParam;\n\t\t}\n\t\tif(this.dataSourceStdCNameParam){\n\t\t\tf.dataSource.studentContact.name = this.dataSourceStdCNameParam;\n\t\t}\n\n\t\tthis.setFilterView();\n\t}\n\tsetFilterView(){\n\t\tif(this.fromDateParam){\n\t\t\tthis.filterData.fromToDate = true;\n\t\t}\n\t\tif(this.nameParam){\n\t\t\tthis.filterData.name = true;\n\t\t}\n\t\tif(this.dataSourceValue){\n\t\t\tif(this.dataSourceValue !== 'all'){\n\t\t\t\tthis.filterData.dataSource = true;\n\t\t\t}\n\t\t}\n\t\tif(this.badgeNames){\n\t\t\tthis.filterData.badgeNames = true;\n\t\t}\n\t\tif(this.additionalInfoParam){\n\t\t\tthis.filterData.additionalInfoAns = true;\n\t\t}\n\t\tif(this.occurrencesStr){\n\t\t\tthis.filterData.occurences = true;\n\t\t}\n\t\tif(this.orderByParam !== 'logintime'){\n\t\t\tthis.filterData.orderBy = true;\n\t\t}\n\t\tif(this.showImagesParam){\n\t\t\tthis.filterData.showImages = true;\n\t\t}\n\t\tif(this.checkinOnlyParam){\n\t\t\tthis.filterData.checkInOnly = true;\n\t\t}\n\t\tif(this.selectedSchoolGroup != null && this.selectedSchoolGroup != '0' || this.selectedSchoolGroupAccount != null && this.selectedSchoolGroupAccount != '0'){\n\t\t\tthis.filterData.schoolGroup = true;\n\t\t}\n\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\n\tprevPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page -= 1;\n\t\t\tthis.setNavParams(this.fobj);\n\t\t}\n\t}\n\n\tfirstPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page = 1;\n\t\t\tthis.setNavParams(this.fobj);\n\t\t}\n\t}\n\n\tnextPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.fobj.page + 1;\n\t\t\tthis.setNavParams(this.fobj);\n\t\t}\n\t}\n\ttoLastPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.lastPage;\n\t\t\tthis.setNavParams(this.fobj);\n\t\t}\n\t}\n\n\tsetExportOpen() {\n\t\tthis.exportOpen = !this.exportOpen;\n\t}\n\n\texportTsv() {\n\t\tif (!this.allowToExport()) {\n\t\t\tthis.msg.error(this.errors['maxExportDateRange']);\n\t\t\tthis.clickedOutside();\n\t\t\treturn;\n\t\t}\n\t\tthis.setExportOpen();\n\t\tif(this.selectedSchoolGroup){\n\t\t\tthis.fobj.schoolGroupId = parseInt(this.selectedSchoolGroup);\n\t\t}\n\t\tif(this.selectedSchoolGroupAccount){\n\t\t\tthis.fobj.schoolAcctNumber = parseInt(this.selectedSchoolGroupAccount);\n\t\t}\n\t\tvar req = new ActivityReportCSVRequest();\n\t\treq.request = this.fobj;\n\t\treq.comma = \"\\t\";\n\t\treq.useCrlf = true;\n\t\tthis.msg.infoHtml('Preparing TSV file, please wait ...');\n\t\tthis.svc.activityReportCsv(this.acctNumber, req).subscribe((resp: ActivityReportCSV) => {\n\t\t\tthis.workerstatus.requestId = resp.requestId;\n\t\t\tthis.exportTSVStatus(this.workerstatus, resp);\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t}\n\t\t});\n\t}\n\n\texportCsv() {\n\t\tif (!this.allowToExport()) {\n\t\t\tthis.msg.error(this.errors['maxExportDateRange']);\n\t\t\tthis.clickedOutside();\n\t\t\treturn;\n\t\t}\n\t\tthis.setExportOpen();\n\t\tif(this.selectedSchoolGroup){\n\t\t\tthis.fobj.schoolGroupId = parseInt(this.selectedSchoolGroup);\n\t\t}\n\t\tif(this.selectedSchoolGroupAccount){\n\t\t\tthis.fobj.schoolAcctNumber = parseInt(this.selectedSchoolGroupAccount);\n\t\t}\n\t\tvar req = new ActivityReportCSVRequest();\n\t\treq.request = this.fobj;\n\t\treq.comma = \",\";\n\t\treq.useCrlf = true;\n\t\tthis.msg.infoHtml('Preparing CSV file, please wait ...');\n\t\tthis.svc.activityReportCsv(this.acctNumber, req).subscribe((resp: ActivityReportCSV) => {\n\t\t\tthis.workerstatus.requestId = resp.requestId;\n\t\t\tthis.exportStatus(this.workerstatus, resp);\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t}\n\t\t});\n\t}\n\n\texportPdf() {\n\t\tif (!this.allowToExport()) {\n\t\t\tthis.msg.error(this.errors['maxExportDateRange']);\n\t\t\tthis.clickedOutside();\n\t\t\treturn;\n\t\t}\n\t\tthis.setExportOpen();\n\t\tif(this.selectedSchoolGroup){\n\t\t\tthis.fobj.schoolGroupId = parseInt(this.selectedSchoolGroup);\n\t\t}\n\t\tif(this.selectedSchoolGroupAccount){\n\t\t\tthis.fobj.schoolAcctNumber = parseInt(this.selectedSchoolGroupAccount);\n\t\t}\n\t\tvar req = new ActivityReportPDFRequest();\n\t\treq.request = this.fobj;\n\t\treq.showImages = this.fobj.showImages;\n\t\treq.timeZone = 'EST';\n\t\tthis.msg.infoHtml('Preparing PDF file, please wait ...');\n\t\tthis.svc.activityReportPdf(this.acctNumber, req).subscribe((resp: ActivityReportPDF) => {\n\t\t\tthis.workerPdfStatus.requestId = resp.requestId;\n\t\t\tthis.exportPDFStatus(this.workerPdfStatus, resp);\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t}\n\t\t});\n\t}\n\n\tsetViewModeOpen() {\n\t\tthis.viewModeOpen = !this.viewModeOpen;\n\t}\n\n\tsetViewMode(mode: string) {\n\t\tthis.viewMode = mode;\n\t\tthis.viewModeText = this.getViewModeText(mode);\n\t\tthis.viewModeOpen = false;\n\t\tthis.setNavParams(this.fobj);\n\t}\n\n\tgetViewModeText(mode: string): string {\n\t\tif (mode == 'table') {\n\t\t\treturn 'Table View';\n\t\t} else if (mode == 'card') {\n\t\t\treturn 'Card View';\n\t\t}\n\t}\n\n\tgetFromPage(): number {\n\t\treturn this.fromPage;\n\t}\n\tgetToPage(): number {\n\t\treturn this.toPage;\n\t}\n\n\tallowToExport(): boolean {\n\t\tlet sdt = this.strDateToDate(this.fobj.fromDateStr);\n\t\tlet edt = this.strDateToDate(this.fobj.toDateStr);\n\t\tlet el = elapsedDaysHoursMinutes(sdt, edt);\n\t\tif (el.days > this.maxExportDateRange) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t}\n\n\tstrDateToDate(d: string): Date {\n\t\tlet dp: string[] = d.split('/');\n\t\treturn new Date(parseInt(dp[2]), (parseInt(dp[0]) - 1), parseInt(dp[1]));\n\t}\n\n\tloadImages() {\n\t\tthis.fobj.showImages = true;\n\t\tthis.filterData.showImages = true;\n\t\tthis.view();\n\t}\n\n\tloadSchoolGroup() {\n\t\tthis.schoolGroupList = [];\n\t\tlet fp = new SchoolGroupFind();\n\t\tfp.page = 1;\n\t\tfp.pageSize = 500;\n\n\t\tthis.svc.schoolGroupFindApi(this.acctNumber, fp).subscribe((sg: SchoolGroup[]) => {\n\t\t\tfor(let row of sg ){\n\t\t\t\tif(parseInt(this.selectedSchoolGroup) === 0){\n\t\t\t\t\tif(row.name.toLowerCase() === 'all'){\n\t\t\t\t\t\tthis.selectedSchoolGroup = row.schoolGroupID.toString();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.schoolGroupList.push(row);\n\t\t\t}\n\n\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.svc.isErrNotFound(err)) {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tloadSchoolGroupAccount() {\n\t\tif(this.selectedSchoolGroup === '0'){\n\t\t\treturn\n\t\t}\n\t\tlet fp = new SchoolGroupFind();\n\t\tfp.schoolGroupID = parseInt(this.selectedSchoolGroup);\n\t\tfp.page = 1;\n\t\tfp.pageSize = 500;\n\t\tthis.schoolGroupAccounts = [];\n\t\tthis.selectedSchoolGroupAccount = '0';\n\t\tthis.svc.schoolGroupFindAccountsV2Api(this.acctNumber, fp).subscribe((sg: RootSchoolGroupAccountV2[]) => {\n\t\t\tfor(let r of sg){\n\t\t\t\tif(r.acctNumber != 0){\n\t\t\t\t\tlet sg0 = new SchoolGroupAccountOrg();\n\t\t\t\t\tsg0.acctNumber = r.acctNumber\n\t\t\t\t\tsg0.organizationName = r.organizationName\n\t\t\t\t\tthis.schoolGroupAccounts.push(sg0);\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet na0 = new SchoolGroupAccountOrg();\n\t\t\tna0.acctNumber = 0;\n\t\t\tna0.organizationName = 'N/A';\n\t\t\tthis.schoolGroupAccounts.unshift(na0);\n\t\t\tthis.msg.close();\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.svc.isErrNotFound(err)) {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tsgSelectChange(){\n\t\tif(this.selectedSchoolGroup !== '0'){\n\t\t\tthis.msg.info(\"Please wait while loading...\")\n\t\t\tthis.loadSchoolGroupAccount();\n\t\t}\n\t}\n\n\tviewFilters(){\n\t\tthis.filterButtonName = 'Filters'\n\t\tif (!this.filterView){\n\t\t\tthis.data = [];\n\t\t\tthis.filterButtonName = 'Use Filters';\n\n\t\t}\n\t\tthis.defaultFilterData();\n\t\tthis.filterView = !this.filterView;\n\t}\n\n\texportStatus(req: ActivityReportExportCSVStatusRequest, csvurl: ActivityReportCSV) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.activityReportExportCSVStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: ActivityReportExportCSVWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! CSV file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\n\texportTSVStatus(req: ActivityReportExportCSVStatusRequest, csvurl: ActivityReportCSV) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.activityReportExportCSVStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: ActivityReportExportCSVWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! TSV file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\n\texportPDFStatus(req: ActivityReportExportPDFStatusRequest, csvurl: ActivityReportPDF) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.activityReportExportPDFStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: ActivityReportExportPDFWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! PDF file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\n\tdefaultFilterData(){\n\t\tif(!this.filterData.fromToDate){\n\t\t\tthis.fobj.fromDateStr = this.strNowDate();\n\t\t\tthis.fobj.toDateStr = this.strNowDate();\n\t\t}\n\t\tif(!this.filterData.name){\n\t\t\tthis.fobj.name = '';\n\t\t}\n\t\tif(!this.filterData.dataSource){\n\t\t\tif(this.dataSourceValue !== 'all'){\n\t\t\t\tthis.dataSourceValue = 'all';\n\t\t\t}\n\t\t}\n\t\tif(!this.filterData.badgeNames){\n\t\t\tthis.badgeNames = '';\n\t\t}\n\t\tif(this.filterData.additionalInfoAns){\n\t\t\tthis.fobj.additionalInfo = '';\n\t\t}\n\t\tif(!this.filterData.occurences){\n\t\t\tthis.fobj.occurrences = 0;\n\t\t}\n\t\tif(!this.filterData.orderBy){\n\t\t\tthis.fobj.orderBy = 'logintime';\n\t\t}\n\t\tif(!this.filterData.showImages){\n\t\t\tthis.fobj.showImages = false;\n\t\t}\n\t\tif(!this.filterData.checkInOnly){\n\t\t\tthis.fobj.checkinOnly = false;\n\t\t}\n\t\tif(this.filterData.schoolGroup){\n\t\t\tthis.fobj.schoolGroupId = 0;\n\t\t\tthis.fobj.schoolAcctNumber = 0;\n\t\t\tthis.loadSchoolGroup();\n\t\t}\n\t}\n\texpandRow(){\n\t\tif(this.trimLength===13){\n\t\t\tthis.trimLength=500;\n\t\t\tthis.expandCollapseName = \"Collapse Rows\"\n\t\t}else{\n\t\t\tthis.trimLength=13;\n\t\t\tthis.expandCollapseName = \"Expand Rows\"\n\t\t}\n\t}\n}\n","\n\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t
\n\t\t\t\t\t

{{row.name}}

\n\t\t\t\t\t

{{row.badgeName}}

\n\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t
0\" style=\"width:40%;\" valign=\"top\">\n\t\t\t\t\t\"\"\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\tID: {{row.badgeId}} \n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t Show Images\n\t\t\t\t\t No Image\n\t\t\t\t\t
\n\t\t\t\t\tID: {{row.badgeId}} \n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n \t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t \t \n \t\t\t\t\t\t\t \n \t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t \t \n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t \n\n\t\t\t\t\t
In:{{row.loginTime | date:\"MM/dd/y\"}} {{row.loginTime | date:\"hh:mm a\"}}
Out:{{row.logoutTime | date:\"hh:mm a\"}}
Out: N/A
Elapsed:{{elapsed(row)}}
Elapsed: N/A
School:{{row.schoolName | truncate : this.trimLength : '...' : 'right'}}
Station:{{row.stationName | truncate : this.trimLength : '...' : 'right'}}
Additional Info
1:{{row.additionalInfo1 | truncate : this.trimLength : '...' : 'right'}}
1: N/A
2:{{row.additionalInfo2 | truncate : this.trimLength : '...' : 'right'}}
2: N/A
3:{{row.additionalInfo3 | truncate : this.trimLength : '...' : 'right'}}
3: N/A
4:{{row.additionalInfo4 | truncate : this.trimLength : '...' : 'right'}}
4: N/A
Data Source
ID:{{row.dataSource.student.studentId | truncate : this.trimLength : '...' : 'right'}}
SIS ID:{{row.dataSource.student.sisStudentId | truncate : this.trimLength : '...' : 'right'}}
Field 1:{{row.dataSource.student.field1 | truncate : this.trimLength : '...' : 'right'}}
Field 2:{{row.dataSource.student.field2 | truncate : this.trimLength : '...' : 'right'}}
Card ID:{{row.dataSource.rfidUser.cardId | truncate : this.trimLength : '...' : 'right'}}
Field 1:{{row.dataSource.rfidUser.field1 | truncate : this.trimLength : '...' : 'right'}}
Field 2:{{row.dataSource.rfidUser.field2 | truncate : this.trimLength : '...' : 'right'}}
Field 1:{{row.dataSource.preloaded.field1 | truncate : this.trimLength : '...' : 'right'}}
Field 2:{{row.dataSource.preloaded.field2 | truncate : this.trimLength : '...' : 'right'}}
Card ID:{{row.dataSource.studentContact.cardId | truncate : this.trimLength : '...' : 'right'}}
Name:{{row.dataSource.studentContact.name | truncate : this.trimLength : '...' : 'right'}}
N/A
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t
\n","///\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\nimport { ActivityReportRow } from './activity_report_row';\nimport { elapsedHoursMinutes } from '../elapsed';\n\n@Component({\n\tselector: 'activity-report-card-view',\n\tstyles: [`\n\t\t.cardSize { margin-right:6px; margin-top:3px; margin-bottom:3px; width:340px; padding-left: 10px; padding-top: 0px; padding-bottom: 0px; padding-right: 10px; }`\n\t],\n\ttemplate: `\n\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t
\n\t\t\t\t\t

{{row.name}}

\n\t\t\t\t\t

{{row.badgeName}}

\n\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t
0\" style=\"width:40%;\" valign=\"top\">\n\t\t\t\t\t\"\"\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\tID: {{row.badgeId}} \n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t Show Images\n\t\t\t\t\t No Image\n\t\t\t\t\t
\n\t\t\t\t\tID: {{row.badgeId}} \n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n \t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t \t \n \t\t\t\t\t\t\t \n \t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n \t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t \t \n \t\t\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t \n\n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n \t\t\t\t\t\t\t \n\t\t\t\t\t \n\n\t\t\t\t\t
In:{{row.loginTime | date:\"MM/dd/y\"}} {{row.loginTime | date:\"hh:mm a\"}}
Out:{{row.logoutTime | date:\"hh:mm a\"}}
Out: N/A
Elapsed:{{elapsed(row)}}
Elapsed: N/A
School:{{row.schoolName | truncate : this.trimLength : '...' : 'right'}}
Station:{{row.stationName | truncate : this.trimLength : '...' : 'right'}}
Additional Info
1:{{row.additionalInfo1 | truncate : this.trimLength : '...' : 'right'}}
1: N/A
2:{{row.additionalInfo2 | truncate : this.trimLength : '...' : 'right'}}
2: N/A
3:{{row.additionalInfo3 | truncate : this.trimLength : '...' : 'right'}}
3: N/A
4:{{row.additionalInfo4 | truncate : this.trimLength : '...' : 'right'}}
4: N/A
Data Source
ID:{{row.dataSource.student.studentId | truncate : this.trimLength : '...' : 'right'}}
SIS ID:{{row.dataSource.student.sisStudentId | truncate : this.trimLength : '...' : 'right'}}
Field 1:{{row.dataSource.student.field1 | truncate : this.trimLength : '...' : 'right'}}
Field 2:{{row.dataSource.student.field2 | truncate : this.trimLength : '...' : 'right'}}
Card ID:{{row.dataSource.rfidUser.cardId | truncate : this.trimLength : '...' : 'right'}}
Field 1:{{row.dataSource.rfidUser.field1 | truncate : this.trimLength : '...' : 'right'}}
Field 2:{{row.dataSource.rfidUser.field2 | truncate : this.trimLength : '...' : 'right'}}
Field 1:{{row.dataSource.preloaded.field1 | truncate : this.trimLength : '...' : 'right'}}
Field 2:{{row.dataSource.preloaded.field2 | truncate : this.trimLength : '...' : 'right'}}
Card ID:{{row.dataSource.studentContact.cardId | truncate : this.trimLength : '...' : 'right'}}
Name:{{row.dataSource.studentContact.name | truncate : this.trimLength : '...' : 'right'}}
N/A
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t
\n`\n})\n\nexport class ActivityReportCardViewComponent {\n\t@Input() data: ActivityReportRow[];\n\t@Input() cardRows: number[]; //cards rows\n\t@Input() maxCards: number;\n\t@Output() onLoadImages: EventEmitter = new EventEmitter();\n\t@Input() showImages: boolean;\n\t@Input() dataSource: string;\n\t@Input() trimLength: number;\n\n\tconstructor() {\n\t\tthis.data = [];\n\t\tthis.cardRows = [];\n\t\tthis.maxCards = 3;\n\t\tthis.showImages = false;\n\t\tthis.trimLength = 13;\n\t}\n\n\tcards(cardRow: number): ActivityReportRow[] {\n\t\tvar f = cardRow * this.maxCards;\n\t\tvar t = f + this.maxCards;\n\t\tif (t > this.data.length) {\n\t\t\tt = this.data.length;\n\t\t}\n\t\tvar rows: ActivityReportRow[] = [];\n\t\tfor (var i = f; i < t; i++) {\n\t\t\trows.push(this.data[i]);\n\t\t}\n\t\treturn rows;\n\t}\n\n\telapsed(row: ActivityReportRow) {\n\t\tvar elapsed = elapsedHoursMinutes(row.loginTime, row.logoutTime);\n\t\treturn `${elapsed.hours}h ${elapsed.minutes}m`\n\t}\n\n\timageSrc(row: ActivityReportRow) {\n\t\treturn row.images[row.imageIndex].link;\n\t}\n\n\tsetImage(row: ActivityReportRow, imgType: string) {\n\t\tfor (var i = 0; i < row.images.length; i++) {\n\t\t\tif (row.images[i].imgType == imgType) {\n\t\t\t\trow.imageIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tcardHeight(row: ActivityReportRow): string {\n\t\tif (row.images.length > 0) {\n\t\t\treturn '100%;'\n\t\t} else if ((row.additionalInfo1.length + row.additionalInfo2.length + row.additionalInfo3.length + row.additionalInfo4.length) > 150) {\n\t\t\treturn '100%'\n\t\t}\n\t\treturn '250px;';\n\t}\n\n\tloadImages() {\n\t\tthis.onLoadImages.emit(null);\n\t}\n}\n","export class ActivityReportCSV {\n\tdownloadUrls: string[];\n\trequestId: string;\n\tconstructor() {\n\t this.downloadUrls = [];\n\t this.requestId = '';\n\t}\n }\n","import { FindActivityReport } from './find_activity_report';\n\nexport class ActivityReportCSVRequest {\n request: FindActivityReport;\n comma: string;\n useCrlf: boolean;\n\n constructor() {\n this.request = new FindActivityReport();\n this.useCrlf = null;\n this.comma = '';\n }\n}\n","import { ActivityReportDSRFIDUser } from \"./activity_report_data_source_rfiduser\";\nimport { ActivityReportDSPreloaded } from \"./activity_report_data_source_preloaded\";\nimport { ActivityReportDSStudent } from \"./activity_report_data_source_student\";\nimport { ActivityReportDSStudentContact } from \"./activity_report_data_source_student_contact\";\n\nexport class ActivityReportDataSource {\n\tsource: string;\n\trfidUser: ActivityReportDSRFIDUser;\n\tpreloaded: ActivityReportDSPreloaded;\n\tstudent: ActivityReportDSStudent;\n\tstudentContact: ActivityReportDSStudentContact;\n\n\tconstructor(){\n\t\tthis.source = '';\n\t\tthis.rfidUser = new ActivityReportDSRFIDUser();\n\t\tthis.preloaded = new ActivityReportDSPreloaded();\n\t\tthis.student = new ActivityReportDSStudent();\n\t\tthis.studentContact = new ActivityReportDSStudentContact();\n\t}\n}\n","export class ActivityReportDSPreloaded{\n\tfield1: string;\n\tfield2: string;\n\tconstructor() {\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t}\n}\n","export class ActivityReportDSPreloadedReply{\n\tfield1: string;\n\tfield2: string;\n\tconstructor() {\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t}\n}\n","import { ActivityReportDSRFIDUserReply } from \"./activity_report_data_source_rfiduser_reply\";\nimport { ActivityReportDSPreloadedReply } from \"./activity_report_data_source_preloaded_reply\";\nimport { ActivityReportDSStudentReply } from \"./activity_report_data_source_student_reply\";\nimport { ActivityReportDSStudentContactReply } from \"./activity_report_data_source_student_contact_reply\";\n\nexport class ActivityReportDataSourceReply {\n\trfidUser: ActivityReportDSRFIDUserReply;\n\tpreloaded: ActivityReportDSPreloadedReply;\n\tstudent: ActivityReportDSStudentReply;\n\tstudentContact: ActivityReportDSStudentContactReply;\n\n\tconstructor(){\n\t\tthis.rfidUser = new ActivityReportDSRFIDUserReply();\n\t\tthis.preloaded = new ActivityReportDSPreloadedReply();\n\t\tthis.student = new ActivityReportDSStudentReply();\n\t\tthis.studentContact = new ActivityReportDSStudentContactReply();\n\t}\n}\n","export class ActivityReportDSRFIDUser{\n\tcardId: string;\n\tfield1: string;\n\tfield2: string;\n\tconstructor() {\n\t\tthis.cardId = '';\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t}\n}\n","export class ActivityReportDSRFIDUserReply{\n\tcardId: string;\n\tfield1: string;\n\tfield2: string;\n\tconstructor() {\n\t\tthis.cardId = '';\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t}\n}\n","export class ActivityReportDSStudent{\n\tstudentId: number;\n\tfield1: string;\n\tfield2: string;\n\n\tconstructor(){\n\t\tthis.studentId = 0;\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t}\n}\n","export class ActivityReportDSStudentContact{\n\tname: string;\n\tcardId: string;\n\n\tconstructor(){\n\t\tthis.name = '';\n\t\tthis.cardId = '';\n\t}\n}\n","export class ActivityReportDSStudentContactReply{\n\tname: string;\n\tcardId: string;\n\n\tconstructor(){\n\t\tthis.name = '';\n\t\tthis.cardId = '';\n\t}\n}\n","export class ActivityReportDSStudentReply{\n\tsisStudentId: string;\n\tstudentId: string;\n\tfield1: string;\n\tfield2: string;\n\n\tconstructor(){\n\t\tthis.sisStudentId = '';\n\t\tthis.studentId = '';\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t}\n}\n","export class ActivityReportExportCSVStatusRequest {\n\trequestId: string;\n\tlastSequenceId: number;\n\n\tconstructor() {\n\t\tthis.requestId = '';\n\t\tthis.lastSequenceId = 0;\n\t}\n}\n","export class ActivityReportExportPDFStatusRequest {\n\trequestId: string;\n\tlastSequenceId: number;\n\n\tconstructor() {\n\t\tthis.requestId = '';\n\t\tthis.lastSequenceId = 0;\n\t}\n}\n","\n
\n\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
Filters NameEnable
From/To Date
Name
Badge Names
School Group / School Name
Data Source
Additional Info Answer
Occurences
Order By
Sort By
Check-In Only
Show Images
\n\t\t\t\t
\n
\n
\n ","///\nimport { Input, Component } from '@angular/core';\nimport { ActivityReportFilters } from \"./activity_report_filter\";\n\n@Component({\n\tselector: 'activity-report-filter-view',\n\ttemplate: `\n
\n\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
Filters NameEnable
From/To Date
Name
Badge Names
School Group / School Name
Data Source
Additional Info Answer
Occurences
Order By
Sort By
Check-In Only
Show Images
\n\t\t\t\t
\n
\n
\n `\n})\n\nexport class ActivityReportFilterViewComponent {\n\t@Input() data: ActivityReportFilters;\n\n\tconstructor() {\n\t\tthis.data = new ActivityReportFilters();\n\t}\n\n}\n","export class ActivityReportFilters {\n\tfromToDate: boolean;\n\tname: boolean;\n\tbadgeNames: boolean;\n\tschoolGroup: boolean;\n\tdataSource: boolean;\n\tadditionalInfoAns: boolean;\n\toccurences:boolean;\n\torderBy: boolean;\n\tsortBy: boolean;\n\tshowImages:boolean;\n\tcheckInOnly: boolean;\n\n\tconstructor(){\n\t\tthis.fromToDate = true;\n\t\tthis.name = true;\n\t\tthis.badgeNames = false;\n\t\tthis.schoolGroup = false;\n\t\tthis.dataSource = false;\n\t\tthis.additionalInfoAns = false;\n\t\tthis.occurences = false;\n\t\tthis.orderBy = false;\n\t\tthis.sortBy = false;\n\t\tthis.showImages = false;\n\t\tthis.checkInOnly = false;\n\t}\n}\n","export class ActivityReportPDF {\n\tdownloadUrls: string[];\n\trequestId: string;\n\tconstructor() {\n\t this.downloadUrls = [];\n\t this.requestId = '';\n\t}\n }\n","import { FindActivityReport } from './find_activity_report';\n\nexport class ActivityReportPDFRequest {\n request: FindActivityReport;\n showImages: boolean;\n timeZone: string;\n\n constructor() {\n this.request = new FindActivityReport();\n this.showImages = false;\n this.timeZone = 'EST';\n }\n}\n","import { LabelImage } from './label_image';\nimport { ActivityReportDataSourceReply } from \"./activity_report_data_source_reply\";\n\nexport class ActivityReportRow {\n id: string;\n name: string;\n badgeName: string;\n loginTime: Date;\n logoutTime: Date;\n additionalInfo1: string;\n additionalInfo2: string;\n additionalInfo3: string;\n additionalInfo4: string;\n images: LabelImage[];\n imageIndex: number;\n loginLocationId: string;\n logoutLocationId: string;\n badgeId: number;\n stationName: string;\n schoolName: string;\n dataSource: ActivityReportDataSourceReply;\n\n\n constructor() {\n this.id = '';\n this.name = '';\n this.badgeName = '';\n //this.loginTime='';\n //this.logoutTime='';\n this.additionalInfo1 = '';\n this.additionalInfo2 = '';\n this.additionalInfo3 = '';\n this.additionalInfo4 = '';\n this.images = [];\n this.imageIndex = 0;\n this.loginLocationId = '';\n\t this.logoutLocationId = '';\n\t this.badgeId = 0;\n\t this.stationName = '';\n\t this.schoolName = '';\n\t this.dataSource = new ActivityReportDataSourceReply();\n }\n}\n","\n
\n
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n \t\t\t\t\t\t\t \t\t N/A\n\t\t\t\t\t \t \t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
IDBadge NameNameLogin TimeLogout TimeElapsedAdditional Info 1Additional Info 2Additional Info 3Additional Info 4School NameStation NameData Source
{{row.badgeId}}{{row.badgeName}}{{row.name}}{{row.loginTime | date:\"MM/dd/yyyy hh:mm a\"}}{{row.logoutTime | date:\"hh:mm a\"}}{{elapsed(row)}}{{row.additionalInfo1}}{{row.additionalInfo2}}{{row.additionalInfo3}}{{row.additionalInfo4}}{{row.schoolName | truncate : this.trimLength : '...' : 'right'}}{{row.stationName | truncate : this.trimLength : '...' : 'right'}}\n\t\t\t\t\t\t\t\tID: {{row.dataSource.student.studentId}}
\n\t\t\t\t\t\t\t\tSIS ID: {{row.dataSource.student.sisStudentId | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 1: {{row.dataSource.student.field1 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 2: {{row.dataSource.student.field2 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tID: {{row.dataSource.rfidUser.cardId}}
\n\t\t\t\t\t\t\t\tField 1: {{row.dataSource.rfidUser.field1 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 2: {{row.dataSource.rfidUser.field2 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tField 1: {{row.dataSource.preloaded.field1 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 2: {{row.dataSource.preloaded.field2 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tCard ID: {{row.dataSource.studentContact.cardId | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tName: {{row.dataSource.studentContact.name | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t
\n
\n
\n ","///\nimport { Input, Component } from '@angular/core';\nimport { ActivityReportRow } from './activity_report_row';\nimport { elapsedHoursMinutes } from '../elapsed';\n\n@Component({\n\tselector: 'activity-report-table-view',\n\ttemplate: `\n
\n
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\n \t\t\t\t\t\t\t \t\t N/A\n\t\t\t\t\t \t \t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
IDBadge NameNameLogin TimeLogout TimeElapsedAdditional Info 1Additional Info 2Additional Info 3Additional Info 4School NameStation NameData Source
{{row.badgeId}}{{row.badgeName}}{{row.name}}{{row.loginTime | date:\"MM/dd/yyyy hh:mm a\"}}{{row.logoutTime | date:\"hh:mm a\"}}{{elapsed(row)}}{{row.additionalInfo1}}{{row.additionalInfo2}}{{row.additionalInfo3}}{{row.additionalInfo4}}{{row.schoolName | truncate : this.trimLength : '...' : 'right'}}{{row.stationName | truncate : this.trimLength : '...' : 'right'}}\n\t\t\t\t\t\t\t\tID: {{row.dataSource.student.studentId}}
\n\t\t\t\t\t\t\t\tSIS ID: {{row.dataSource.student.sisStudentId | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 1: {{row.dataSource.student.field1 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 2: {{row.dataSource.student.field2 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tID: {{row.dataSource.rfidUser.cardId}}
\n\t\t\t\t\t\t\t\tField 1: {{row.dataSource.rfidUser.field1 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 2: {{row.dataSource.rfidUser.field2 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tField 1: {{row.dataSource.preloaded.field1 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tField 2: {{row.dataSource.preloaded.field2 | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tCard ID: {{row.dataSource.studentContact.cardId | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\tName: {{row.dataSource.studentContact.name | truncate : this.trimLength : '...' : 'right'}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t
\n
\n
\n `\n})\n\nexport class ActivityReportTableViewComponent {\n\t@Input() data: ActivityReportRow[];\n\t@Input() dataSource: string;\n\t@Input() trimLength: number;\n\n\tconstructor() {\n\t\tthis.data = [];\n\t\tthis.trimLength = 13;\n\t}\n\n\telapsed(row: ActivityReportRow) {\n\t\tvar elapsed = elapsedHoursMinutes(row.loginTime, row.logoutTime);\n\t\treturn `${elapsed.hours}h ${elapsed.minutes}m`\n\t}\n}\n","import { ActivityReportDataSource } from \"./activity_report_data_source\";\n\nexport class FindActivityReport {\n\tfromDateStr: string;\n\ttoDateStr: string;\n\tname: string;\n\tadditionalInfo: string;\n\toccurrences: number;\n\torderBy: string;\n\tshowImages: boolean;\n\tpageSize: number;\n\tpage: number;\n\tsortType: string;\n\tbadgeNames: string[];\n\tcheckinOnly: boolean;\n\tschoolGroupId: number;\n\tschoolName: string;\n\tschoolAcctNumber: number;\n\tdataSource: ActivityReportDataSource;\n\n\tconstructor() {\n\t\tthis.fromDateStr = '';\n\t\tthis.toDateStr = '';\n\t\tthis.name = '';\n\t\tthis.additionalInfo = '';\n\t\tthis.occurrences = 0;\n\t\tthis.orderBy = '';\n\t\tthis.showImages = null;\n\t\tthis.pageSize = 20; //default page size\n\t\tthis.page = 1;\n\t\tthis.sortType = '';\n\t\tthis.badgeNames = [];\n\t\tthis.checkinOnly = false;\n\t\tthis.schoolGroupId = 0;\n\t\tthis.schoolName = '';\n\t\tthis.schoolAcctNumber = 0;\n\t\tthis.dataSource = new ActivityReportDataSource();\n\t}\n}\n","\n\t
\n\t\t
\n\t\t\t\n\t\t\t

Click a school name to switch the school or click the checkbox to make a default school in the next login.

\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
AcctNumberDistrictIs Default
{{row.acctNumber}}{{row.schoolName}}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n ","/// \nimport { Component } from '@angular/core';\nimport { AppTitle } from './title';\nimport { DistrictService } from './district.service';\nimport { Router, RouterOutlet } from '@angular/router';\nimport { Account, validateToken } from './account.service';\nimport { Alert } from './alert';\nimport { UserRoles } from './user_roles';\nimport { AppService } from './app.service';\n\n@Component({\n\tselector: 'school-access',\n\ttemplate: `\n\t
\n\t\t
\n\t\t\t\n\t\t\t

Click a school name to switch the school or click the checkbox to make a default school in the next login.

\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
AcctNumberDistrictIs Default
{{row.acctNumber}}{{row.schoolName}}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n `\n})\n\nexport class SchoolAccessComponent {\n\tdata: UserRoles[];\n\tmsg: Alert;\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate title: AppTitle,\n\t\tprivate account: Account,\n\t\tprivate dvc: DistrictService,\n\t\tprivate app: AppService,\n\t) {\n\t\tthis.msg = new Alert();\n\t\ttitle.setTitles({\n\t\t\ttitle: 'District Access',\n\t\t\tdashboard: 'District Access'\n\t\t});\n\t\ttitle.setBreadcrumbs([\n\t\t\t{ title: 'District Access', link: '' }\n\t\t]);\n\t\tthis.loadData();\n\t}\n\n\tloadData() {\n\t\tif (validateToken()) {\n\t\t\tthis.dvc.userRolesApi().subscribe((urs: UserRoles[]) => {\n\t\t\t\tthis.data = urs;\n\n\t\t\t\t// Sort list by school name\n\t\t\t\tthis.data.sort((a, b) => (a.schoolName > b.schoolName) ? 1 : ((b.schoolName > a.schoolName) ? -1 : 0));\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\tconsole.log(err);\n\t\t\t});\n\t\t}\n\t}\n\n\tsetDefault(idx: number) {\n\t\tthis.dvc.setDefaultApi(this.data[idx]).subscribe(() => {\n\t\t\tthis.msg.success('Default school access changed to ' + this.data[idx].schoolName);\n\t\t},\n\t\t\terr => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t});\n\t\tfor (var d in this.data) {\n\t\t\tif (this.data[d] != this.data[idx]) {\n\t\t\t\tthis.data[d].isDefault = false;\n\t\t\t}\n\t\t}\n\t}\n\n\tchangeUserRoles(idx: number) {\n\t\tthis.dvc.setUserRoles(this.data[idx]);\n\t\tif (this.dvc.containsUserRole(this.data[idx], 'admin')) {\n\t\t}\n\n\t\t// trigger app component reload\n\t\tthis.app.onLoadApp.emit(null);\n\n\t\tthis.router.navigate(['settings/' + this.data[idx].acctNumber]);\n\t}\n\n}\n","export class AssociateAccount {\n\tacctNumber: string;\n\tparentAccountNumber:\tstring;\n\torganizationName: string;\n\tstate: string;\n\tzipCode: string;\n\tjoinedAt: Date;\n\tenabled: boolean;\n\n\tconstructor() {\n\t\tthis.acctNumber = '';\n\t\tthis.parentAccountNumber = '';\n\t\tthis.organizationName = '';\n\t\tthis.state = '';\n\t\tthis.zipCode = '';\n\t\tthis.joinedAt = new Date();\n\t\tthis.enabled = false;\n\t}\n }\n","import { AssociateAccount } from './account_association';\n\nexport class AssociateAccountBatch {\n\tAssociateAccount: AssociateAccount[];\n\n constructor() {\n this.AssociateAccount = [];\n }\n}\n","\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
School NumberOrganization NameStateZip CodeJoined DateCheck All
{{hexAcctNumber(row.acctNumber)}}{{row.organizationName}}{{row.state}}{{row.zipCode}}{{row.joinedAt | date:\"MM/dd/y HH:mm\"}}
\n\t\t\t
\n\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t
\n ","\n/// \nimport { OnInit, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { Account, validateToken } from '../account.service';\nimport { AssociateAccount } from './account_association';\nimport { AssociateAccountBatch } from './account_association_batch';\n\n@Component({\n\tselector: 'school-association',\n\tstyles: [`\n .tag {\n margin-right:2px;\n background-color:#9dbd9e;\n border-radius:4px;\n padding:5px;\n }\n\t\t.tag-close {\n\t\t\tmargin-left:5px;\n\t \t cursor: pointer;\n\t }\n `],\n\ttemplate: `\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
School NumberOrganization NameStateZip CodeJoined DateCheck All
{{hexAcctNumber(row.acctNumber)}}{{row.organizationName}}{{row.state}}{{row.zipCode}}{{row.joinedAt | date:\"MM/dd/y HH:mm\"}}
\n\t\t\t
\n\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t
\n `\n})\nexport class AssociationComponent implements OnInit {\n\tdata: AssociateAccount[];\n\tcheckIndeterminate: boolean;\n\tisChecked: boolean;\n\tcardRows: number[]; //cards rows\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tacctNumber: string;\n\tform: FormGroup;\n\thasAccess: boolean;\n\tmaxPageSize: number;\n\tcurrentRow: AssociateAccount;\n\tconstructor(private account: Account, private router: Router, private dvc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Associate School',\n\t\t\tdashboard: 'Associate School'\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Associate School', link: `` }\n\t\t]);\n\t\tthis.maxPageSize = 20;\n\t\tthis.data = [];\n\t\tthis.currentRow = new AssociateAccount();\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(\"You don't have access to this district number \" + this.acctNumber);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\n\t\tthis.loadData();\n\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Associate School', link: `` },\n\t\t]);\n\t}\n\n\tview() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.loadData();\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\n\tcheckall() {\n\t\tfor (var d in this.data) {\n\t\t\tif (this.isChecked) {\n\t\t\t\tthis.data[d].enabled = true;\n\t\t\t} else {\n\t\t\t\tthis.data[d].enabled = false;\n\t\t\t}\n\t\t}\n\t\tthis.checkindeterminate()\n\t}\n\n\tleftPad(val: string, size: number, ch: string): string {\n\t\tvar result = String(val);\n\t\tif (!ch) {\n\t\t\tch = \" \";\n\t\t}\n\t\twhile (result.length < size) {\n\t\t\tresult = ch + result;\n\t\t}\n\t\treturn result;\n\t}\n\n\thexAcctNumber(num: number): string {\n\t\t//sign >>> is Zero-fill right shift\n\t\treturn this.leftPad((num >>> 0).toString(16), 8, '0').toUpperCase();\n\t}\n\tloadData() {\n\t\tthis.dvc.accountAssociationFindApi(this.acctNumber).subscribe((accs: AssociateAccount[]) => {\n\t\t\tthis.data = accs;\n\t\t\tthis.msg.close();\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis.findCountAssociateSchool();\n\t}\n\n\tfindCountAssociateSchool() {\n\t\tthis.dvc.accountAssociationCountApi(this.acctNumber).subscribe(resp => {\n\t\t\tthis.checkindeterminate();\n\t\t},\n\t\t\terr => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t});\n\n\t}\n\n\tsaveButton() {\n\t\tlet req = new AssociateAccountBatch\n\t\treq.AssociateAccount = this.data;\n\t\tthis.dvc.accountAssociationAssociateApi(this.acctNumber, req).subscribe(resp => {\n\t\t\tthis.msg.success('Successfully Saved ');\n\t\t},\n\t\t\terr => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t});\n\t}\n\tcheckindeterminate(){\n\t\tif (this.data.every(this.checkAllFalsedata)){\n\t\t\tthis.isChecked = false\n\t\t\tthis.checkIndeterminate = false\n\t\t}\n\t\telse if(this.data.every(this.checkAllTruedata)){\n\t\t\tthis.checkIndeterminate = false\n\t\t\tthis.isChecked = true\n\t\t} else{\n\t\t\tthis.isChecked = false\n\t\t\tthis.checkIndeterminate = true\n\t\t}\n\t}\n\n\tcheckAllTruedata(data, index, array) {\n\t\treturn (data.enabled == true);\n\t}\n\tcheckAllFalsedata(data, index, array) {\n\t\treturn (data.enabled == false);\n\t}\n\n}\n\n","\n
\n
\n \n
\n
\n
\n\t\t
\n
\n
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

Badge Number 0-19

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \t
\n
\n

Badge Name

\n \n
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

School Group (only for rfid user registration feature)

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n ","\n/// \nimport { OnInit, Component } from '@angular/core';\nimport { Badge } from './badge';\nimport { Alert } from '../alert';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { controlErrors, AppValidators } from '../app.validators';\nimport { DistrictService } from '../district.service';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { AppTitle } from '../title';\nimport { Account } from '../account.service';\nimport { User } from '../user';\nimport { FindBadge } from './find_badge';\nimport { SchoolGroup } from './school_group'\nimport { SchoolGroupFind } from './find_school_group';\nimport { Subscription } from 'rxjs/Rx';\n\n@Component({\n\tselector: 'badge',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n\t\t
\n
\n
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

Badge Number 0-19

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \t
\n
\n

Badge Name

\n \n
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

School Group (only for rfid user registration feature)

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n `,\n\t preserveWhitespaces:true,\n})\n\nexport class BadgeComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tdata: Badge;\n\tuser: User;\n\tacctNumber: string;\n\tidParam: string;\n\teditMode: boolean;\n\tform: FormGroup;\n\tsaveCount: number;\n\tschoolGroup: SchoolGroup[];\n\tschoolGroupIDValue: string;\n\tprivate subscriptionQueryParams: Subscription;\n\n\tconstructor(private account: Account, private router: Router, private dvc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute){\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.data = new Badge();\n\t\tthis.form = fb.group({\n\t\t\tbadgeName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tbadgeNumber: ['', Validators.compose([Validators.required,AppValidators.number, Validators.maxLength(2),Validators.min(0),Validators.max(19)])],\n\t\t\tschoolGroup: ['', Validators.compose([Validators.required])],\n\t\t});\n\t\tthis.editMode = false;\n\t\tthis.saveCount = 1;\n\t\tthis.schoolGroup = [];\n\t\tthis.schoolGroupIDValue = '1';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tif (params['schoolGroupIDValue']) {\n\t\t\t\t\tthis.schoolGroupIDValue = params['schoolGroupIDValue']\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit(){\n\t\tlet titleStr = 'Add New';\n\t\tlet action = 'add';\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Add New - Badge',\n\t\t\tdashboard: 'Add New - Badge',\n\t\t});\n\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.idParam = this.activatedRoute.snapshot.params['id'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tif (this.idParam) {\n\t\t\tthis.editMode = true;\n\t\t\tthis.loadData();\n\t\t\tthis.title.setTitles({\n\t\t\t\ttitle: 'Edit - Badge',\n\t\t\t\tdashboard: 'Edit - Badge',\n\t\t\t});\n\t\t\ttitleStr = 'Edit';\n\t\t\taction = 'edit';\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Rfid Users List ', link: `/settings/${this.acctNumber}/rfid-users-list` },\n\t\t\t{ title: 'Badge List ', link: `/settings/${this.acctNumber}/rfid-users-list/badge-list` },\n\t\t\t{ title: titleStr, link: '' },\n\t\t]);\n\t\tthis.loadSchoolGroupList();\n\t}\n\n\tloadData(){\n\t\tlet na0 = new Badge();\n\t\tlet fp = new FindBadge();\n\t\tfp.id = parseInt(this.idParam);\n\t\tfp.badgeNumber = -1;\n\t\tthis.dvc.badgeFindApi(this.acctNumber, fp).subscribe((rows: Badge[]) => {\n\t\t\tthis.msg.close();\n\t\t\tthis.data = rows[0];\n\t\t\tthis.form.get('badgeName').setValue(this.data.badgeName);\n\t\t\tthis.form.get('badgeNumber').setValue(\"\"+this.data.badgeNumber);\n\t\t\tthis.schoolGroupIDValue = this.data.schoolGroupID.toString();\n\t\t\tthis.form.get('schoolGroup').setValue(this.data.schoolGroupID);\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.dvc.isErrNotFound(err)) {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tsave(){\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.data.badgeNumber = parseInt(this.form.get('badgeNumber').value);\n\t\tthis.data.badgeName = this.form.get('badgeName').value;\n\t\tthis.schoolGroupIDValue = this.form.get('schoolGroup').value;\n\t\tthis.data.schoolGroupID = parseInt(this.form.get('schoolGroup').value);\n\t\tif (this.editMode) {\n\t\t\tthis.dvc.badgeUpdateApi(this.acctNumber, this.data)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.dvc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.goBack();\n\t\t\t\t\t}, 1000)\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t}else{\n\t\t\tthis.dvc.badgeAddApi(this.acctNumber, this.data)\n\t\t\t.subscribe(res => {\n\t\t\t\tlet saveMessage = this.dvc.getDefaultSaveMessage();\n\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t}\n\t\t\t\tthis.saveCount++;\n\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t\t}\n\n\t}\n\tclearForm(){\n\t\tthis.form.reset({\n\t\t\tbadgeName: '',\n\t\t\tbadgeNumber: '',\n\t\t\tschoolGroupID: 0,\n\t\t});\n\t}\n\tgoBack(){\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/badge-list`]);\n\t}\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\tloadSchoolGroupList() {\n\t\tlet na0 = new SchoolGroup();\n\t\tna0.schoolGroupID = 1;\n\t\tna0.name = 'None';\n\t\tthis.schoolGroup.push(na0);\n\t\tlet fp = new SchoolGroupFind();\n\t\tfp.page = 1;\n\t\tfp.pageSize = 100;\n\t\tthis.dvc.schoolGroupFindApi(this.acctNumber, fp).subscribe((sg: SchoolGroup[]) => {\n\t\t\tsg.forEach((v => {\n\t\t\t\t// exclude: 1 is students and 2 is pre-approved visitors, 3 student contacts\n\t\t\t\tthis.schoolGroup.push(v);\n\t\t\t}));\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.dvc.isErrNotFound(err)) {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n}\n","export class Badge {\n\tid: number;\n\tacctNumber: number;\n\tbadgeNumber: number;\n\tbadgeName: string;\n\tschoolGroupName: string;\n\tschoolGroupID: number;\n\tcreatedAt: Date;\n\tchangedAt: Date;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.acctNumber = 0;\n\t\tthis.badgeNumber = -1;\n\t\tthis.badgeName = '';\n\t\tthis.schoolGroupID = 0;\n\t\tthis.schoolGroupName = '';\n\t\tthis.createdAt = new Date();\n\t\tthis.changedAt = new Date();\n\t}\n}\n","\n
\n
\n \n
\n
\n
\n
\n \n \n\t\t\t\t\t Go Back\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n \n \n \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n
Badge NumberBadge NameChanged AtActions
{{row.badgeNumber}}{{row.badgeName}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t | \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n
\n
\n
","\n/// \nimport { OnInit, Component } from '@angular/core';\nimport { Alert } from '../alert';\nimport { Account, validateToken } from '../account.service';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { FormBuilder} from '@angular/forms';\nimport { DistrictService } from '../district.service';\nimport { AppTitle } from '../title';\nimport { Badge } from './badge';\nimport { FindBadge } from './find_badge';\nimport { Observable, Observer } from 'rxjs';\nimport { isDateSet } from '../date_helper';\n\n@Component({\n\tselector: 'badge-list',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n
\n \n \n\t\t\t\t\t Go Back\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n \n \n \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n
Badge NumberBadge NameChanged AtActions
{{row.badgeNumber}}{{row.badgeName}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t | \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n
\n
\n
`,\n\t\t preserveWhitespaces:true,\n})\nexport class BadgeListComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmsgInfo: Alert;\n\tacctNumber: string;\n\tfobj: FindBadge;\n\tdata: Badge[];\n\n\tconstructor(\n\t\tprivate account: Account,\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tfb: FormBuilder,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t){\n\t\tthis.fobj = new FindBadge();\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.msgInfo = new Alert();\n\t}\n\tngOnInit() {\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Badge List',\n\t\t\tdashboard: 'Badge List',\n\t\t});\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'RFID User List', link: `/settings/${this.acctNumber}/rfid-users-list` },\n\t\t\t{ title: 'Badge List', link: '' }\n\t\t]);\n\t\tthis.loadData();\n\t}\n\n\tloadData() {\n\t\tthis.data = [];\n\t\tthis.fobj.badgeNumber = -1;\n\t\tthis.svc.badgeFindApi(this.acctNumber,this.fobj).subscribe((rows:Badge[])=> {\n\t\t\tfor (let e of rows) {\n\t\t\t\tif (!isDateSet(e.changedAt)) {\n\t\t\t\t\te.changedAt = e.createdAt\n\t\t\t\t}\n\n\t\t\t this.data.push(e);\n\t\t\t}\n\t\t});\n\t}\n\trefresh(): Observable {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tthis.msg.close();\n\t\tthis.loadData();\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/badge-list`]);\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\tgoBack(){\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list`]);\n\t}\n\taddNew(){\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/badge-list/add`]);\n\t}\n\tedit(row: Badge){\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/badge-list/${row.id}/edit`]);\n\t}\n\tremove(row: Badge){\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tthis.msgInfo.close();\n\t\tthis.svc.badgeDeleteApi(this.acctNumber, row.id)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.msg.success('Successfully removed selected record, you might also want to remove RFID Users for that badge');\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\treadOnly(row: Badge){\n\t\t\tif (row.badgeNumber >=0 && row.badgeNumber <= 6) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\treturn false;\n\t}\n}\n","export class FindBadge {\n\tid: number;\n\tbadgeNumber: number;\n\tbadgeName: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.badgeNumber = 0;\n\t\tthis.badgeName = '';\n\t}\n}\n","\nexport class SchoolGroupFind {\n\tschoolGroupID: number;\n\tacctNumbers: number[];\n\tname: string;\n\tpage: number;\n\tpageSize: number;\n\tconstructor() {\n\t\tthis.schoolGroupID = 0;\n\t\tthis.acctNumbers = [];\n\t\tthis.name = '';\n\t\tthis.page = 0;\n\t\tthis.pageSize = 0;\n\t}\n}\n","import { NoGoEnhanceTextSearch } from './nogo-enhance-text-search';\nexport class NoGoEnhanceExportCSV {\n\tseparator: string;\n\tuseCrlf: boolean;\n\tfileVersion: string;\n\ttextSearch: NoGoEnhanceTextSearch;\n\trequestId: string;\n\n\tconstructor() {\n\t\tthis.textSearch = new NoGoEnhanceTextSearch();\n\t\tthis.separator = '';\n\t\tthis.useCrlf = true;\n\t\tthis.fileVersion = '';\n\t\tthis.requestId = '';\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","import { OnInit, Component, ViewChild } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport 'rxjs/add/operator/map';\nimport 'rxjs/add/operator/catch';\nimport { NoGoEnhanceExportCSV } from './nogo-enhance-export-csv';\nimport { NoGoEnhanceExportCSVReply } from './nogo-enhance-export-csv-reply';\nimport { NoGoEnhanceWorkerStatus } from './nogo-enhance-worker-status-request';\nimport { NoGoEnhanceWorkerStatusReply } from './nogo-enhance-worker-status';\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'nogo-enhance-export',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class NoGoEnhanceExportComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\n\tacctNumber: string;\n\tgoBackName: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tsubscriptionQueryParams: Subscription;\n\tsearchQueryParam: string;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: NoGoEnhanceWorkerStatus;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate dvc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Export - NoGo Enhanced List',\n\t\t\tdashboard: 'Export - NoGo Enhanced List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.searchQueryParam = '';\n\t\tthis.workerstatus = new NoGoEnhanceWorkerStatus();\n\t\tthis.goBackName = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.goBackName = `/settings/${this.acctNumber}/nogo-enhance-list`;\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'NoGo Enhanced List', link: `/settings/${this.acctNumber}/nogo-enhance-list` },\n\t\t\t{ title: 'Export', link: '' }\n\t\t]);\n\t}\n\n\texportFile() {\n\t\tlet tx = new NoGoEnhanceExportCSV();\n\t\ttx.fileVersion = this.fileVersion;\n\t\ttx.textSearch.query = this.searchQueryParam;\n\t\tthis.msg.warningHtml('Preparing CSV file, please wait ...');\n\t\tthis.dvc.noGoEnhanceExportCsvApi(this.acctNumber, tx)\n\t\t\t.subscribe(resp => {\n\t\t\t\tthis.workerstatus.requestId = resp.requestId\n\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\tthis.exportStatus(this.workerstatus, resp)\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list`]);\n\t}\n\texportStatus(req: NoGoEnhanceWorkerStatus, csvurl: NoGoEnhanceExportCSVReply) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.dvc.noGoEnhanceExportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: NoGoEnhanceWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! CSV file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(this.dvc.getError(err)));\n\t\t\t});\n\t}\n\tsetNavParams(req: NoGoEnhanceWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/export`], { queryParams: this.dvc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t {{row.originalFileName | truncate : 20 : '...' : 'right' }}
\n\t\t\t\t\t\t\t\t\t {{row.createdAt | date:\"MM/dd/y\"}}, {{row.createdAt | date:\"hh:mm a\"}}
\n\t\t\t\t\t\t\t \t\tLink | \n\t\t\t\t\t\t\t\t\tRemove |\n\t\t\t\t\t\t\t\t\tDownload\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\tNo Files Available.\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t","import { OnInit, Component, ViewChild } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { FileUploader, FileItem, FileUploaderOptions } from \"ng2-file-upload\";\nimport { Subscription } from 'rxjs/Subscription';\nimport { NoGoEnhanceFile } from './nogo-enhance-file';\nimport { NoGoEnhanceFind } from './nogo-enhance-find';\nimport { MIME_DOC, MIME_IMAGE, MIME_TEXT, MIME_XLS, MIME_APPLICATION } from '../shared/mime-types';\n\n@Component({\n\tselector: 'nogo-enhance-files',\n\tstyles: [`\n\t\t.cardSize { margin-right:6px; margin-top:3px; margin-bottom:3px; width:340px; padding-left: 10px; padding-top: 0px; padding-bottom: 0px; padding-right: 10px; }\n\t\t.card-col {\n\t\t\tpadding:0px 6px 0px 0px;\n\t\t}\n\t\t.card-row {\n\t\t\tpadding:0px 15px 0px 15px;\n\t\t}\n\t\t.img-fit {\n\t\t\tdisplay: block;\n\t\t\tmax-width: 100%;\n\t\t\tmax-height: 100%;\n\t\t\twidth: auto;\n\t\t\theight: auto;\n\t\t}\n\t\t.img-center{\n\t\t\tdisplay: block;\n\t\t\tmargin-left: auto;\n\t\t\tmargin-right: auto\n\t\t}\n\t\t`\n\t],\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t {{row.originalFileName | truncate : 20 : '...' : 'right' }}
\n\t\t\t\t\t\t\t\t\t {{row.createdAt | date:\"MM/dd/y\"}}, {{row.createdAt | date:\"hh:mm a\"}}
\n\t\t\t\t\t\t\t \t\tLink | \n\t\t\t\t\t\t\t\t\tRemove |\n\t\t\t\t\t\t\t\t\tDownload\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\tNo Files Available.\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class NoGoEnhanceFilesComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\n\tacctNumber: string;\n\turl: string;\n\tuploader: FileUploader;\n\tfileTitle: string;\n\tuploadDisabled: boolean;\n\tnoGoEnhanceId: number;\n\tdata: NoGoEnhanceFile[];\n\tfirstName: string;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate dvc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Files - NoGo Enhanced Files',\n\t\t\tdashboard: 'Files - NoGo Enhanced Files'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\n\t\tthis.url = '';\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t\tthis.data = [];\n\t\tthis.firstName = '';\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.noGoEnhanceId = parseInt(this.activatedRoute.snapshot.params['id']);\n\n\t\tthis.loadUploader();\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'NoGo Enhanced List', link: `/settings/${this.acctNumber}/nogo-enhance-list` },\n\t\t\t{ title: 'Files', link: '' }\n\t\t]);\n\n\t\tthis.loadFiles();\n\t}\n\n\tloadUploader() {\n\t\tthis.url = this.dvc.noGoEnhanceFileUploadUrl(this.acctNumber);\n\t\tlet token = this.dvc.getToken();\n\t\tthis.uploader = new FileUploader({ url: this.url, authToken: `${token.tokenType} ${token.accessToken}` });\n\n\t\tthis.uploader.onAfterAddingFile = (item: FileItem) => {\n\t\t\t//After file is added on queue, enable Upload button and file name\n\t\t\tthis.fileTitle = item.file.name;\n\t\t\tthis.uploadDisabled = false;\n\t\t}\n\n\t\tthis.uploader.onWhenAddingFileFailed = (item: any, filter: any, options: any) => {\n\t\t\tthis.msg.error('Supported files are images only.');\n\t\t};\n\n\t\tlet upOpt: FileUploaderOptions = {};\n\t\tupOpt.allowedMimeType = [...MIME_DOC, ...MIME_IMAGE, ...MIME_DOC, ...MIME_XLS, ...MIME_TEXT, ...MIME_APPLICATION];\n\t\tthis.uploader.setOptions(upOpt);\n\t}\n\n\tloadFiles() {\n\t\tlet find = new NoGoEnhanceFind();\n\t\tfind.id = this.noGoEnhanceId;\n\n\t\tthis.dvc.noGoEnhanceFindApi(this.acctNumber, find)\n\t\t\t.subscribe(d => {\n\n\t\t\t\tthis.data = d[0].files;\n\t\t\t\tfor (let row of this.data) {\n\t\t\t\t\tlet isJsonFile = this.isJsonUrlFile(row);\n\t\t\t\t\tif (isJsonFile) {\n\t\t\t\t\t\tthis.dvc.noGoEnhanceFileDownloadJsonUrl(this.acctNumber, row.downloadUrl)\n\t\t\t\t\t\t\t.subscribe(url => {\n\t\t\t\t\t\t\t\trow.linkUrl = url;\n\t\t\t\t\t\t\t}, err => {\n\t\t\t\t\t\t\t\tconsole.log(err);\n\t\t\t\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tif (!row.originalFileName) {\n\t\t\t\t\t\trow.originalFileName = 'no name';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.firstName = d[0].firstName;\n\n\t\t\t\tthis.title.setTitles({\n\t\t\t\t\ttitle: `Files - NoGo Enhanced Files for ${this.firstName}`,\n\t\t\t\t\tdashboard: `Files - NoGo Enhanced Files for ${this.firstName}`,\n\t\t\t\t});\n\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msgHead.error(e);\n\t\t\t});\n\t}\n\n\tonClick() {\n\t\tthis.uploader.clearQueue();\n\t\tthis.disableUpload();\n\t}\n\n\tupload() {\n\t\t// set to vars when different scope\n\n\t\tlet dataobj = { noGoEnhanceId: this.noGoEnhanceId };\n\t\tvar data = JSON.stringify(dataobj)\n\n\t\t// send other params with file\n\t\tthis.uploader.onBuildItemForm = function(fileItem, form) {\n\t\t\tform.append('jsonData', data);\n\t\t\treturn { fileItem, form }\n\t\t};\n\t\tif (this.uploader.queue.length > 0) {\n\t\t\tthis.msg.warning('Please wait while uploading file ...');\n\t\t\tthis.uploader.onCompleteItem = (i: any, resp: string, code: number) => {\n\t\t\t\tif (code == 0) {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(new Error()));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (code != 200) {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tlet err = new Error();\n\t\t\t\t\tif (respJson.error) {\n\t\t\t\t\t\terr.message = respJson.error;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(this.dvc.getError(err)));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.success('Successfully file uploaded.');\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\tthis.clearSelectedFile();\n\t\t\t\t\tthis.loadFiles();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tlet fi = this.uploader.queue[0];\n\t\t\tfi.upload();\n\t\t} else {\n\t\t\tthis.msg.error('File not selected.');\n\t\t}\n\t}\n\n\t@ViewChild('selectedFile') selectedFile: any;\n\tclearSelectedFile() {\n\t\tthis.selectedFile.nativeElement.value = '';\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list`]);\n\t}\n\n\tdisableUpload() {\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t}\n\n\tremove(r: NoGoEnhanceFile, i: number) {\n\t\tthis.dvc.noGoEnhanceFileRemoveApi(this.acctNumber, r.id)\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.data.splice(i, 1);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msgHead.error(e);\n\t\t\t});\n\t}\n\n\tdownloadUrl(r: NoGoEnhanceFile) {\n\t\treturn `${r.downloadUrl}&asAttachment=true`;\n\t}\n\n\tisImageFile(r: NoGoEnhanceFile) {\n\t\tif (r.contentType === 'image/png' || r.contentType === 'image/jpg' || r.contentType === 'image/jpeg' || r.contentType === 'image/gif') {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tisJsonUrlFile(r: NoGoEnhanceFile) {\n\t\tif (r.contentType === 'application/json' && r.originalFileName.indexOf('url.json') != -1) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n}\n","export class NoGoEnhanceFind {\n\tid: number;\n\tfirstName: string;\n\tmiddleName: string;\n\tlastName: string;\n\tpage: number;\n\tpageSize: number;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.middleName = '';\n\t\tthis.lastName = '';\n\t\tthis.page = 1;\n\t\tthis.pageSize = 1;\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","import { OnInit, Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { FileUploader, FileItem } from \"ng2-file-upload\";\nimport { NoGoEnhanceWorkerStatus } from \"./nogo-enhance-worker-status-request\";\nimport { NoGoEnhanceWorkerStatusReply } from \"./nogo-enhance-worker-status\";\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'nogo-enhance-import',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class NoGoEnhanceImportComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\n\tacctNumber: string;\n\turl: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tuploader: FileUploader;\n\tfileTitle: string;\n\tuploadDisabled: boolean;\n\tworkerstatus: NoGoEnhanceWorkerStatus;\n\tprivate subscriptionQueryParams: Subscription;\n\trequestId: string;\n\tsequenceId: string;\n\tprivate sub: any;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate dvc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Import - NoGo Enhanced List',\n\t\t\tdashboard: 'Import - NoGo Enhanced List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\n\t\tthis.url = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web District Manager v3.0', id: 'web_district_manager_v3_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.workerstatus = new NoGoEnhanceWorkerStatus();\n\t\tthis.workerstatus.requestId = this.requestId;\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.loadUploader();\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tif (this.requestId != null) {\n\t\t\tthis.workerstatus.requestId = this.requestId;\n\t\t\tthis.workerstatus.lastSequenceId = parseInt(this.sequenceId);\n\t\t\tthis.importStatus(this.workerstatus);\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'NoGo Enhanced List', link: `/settings/${this.acctNumber}/nogo-enhance-list` },\n\t\t\t{ title: 'Import', link: '' }\n\t\t]);\n\t}\n\n\tloadUploader() {\n\t\tthis.url = this.dvc.noGoEnhanceImportCsvUrl(this.acctNumber);\n\t\tlet token = this.dvc.getToken();\n\t\tthis.uploader = new FileUploader({ url: this.url, authToken: `${token.tokenType} ${token.accessToken}` });\n\t\tthis.uploader.onAfterAddingFile = (item: FileItem) => {\n\t\t\t//After file is added on queue, enable Upload button and file name\n\t\t\tthis.fileTitle = item.file.name;\n\t\t\tthis.uploadDisabled = false;\n\t\t}\n\t}\n\n\tonChange(event: any) {\n\n\t}\n\n\tonClick() {\n\t\tthis.uploader.clearQueue();\n\t\tthis.disableUpload();\n\t}\n\n\tupload() {\n\t\tlet dataobj = { fileVersion: this.fileVersion, separator: ',' }\n\t\tvar data = JSON.stringify(dataobj)\n\t\t// send other params with file\n\t\tthis.uploader.onBuildItemForm = function (fileItem, form) {\n\t\t\tform.append('jsonData', data);\n\t\t\treturn { fileItem, form }\n\t\t};\n\t\tif (this.uploader.queue.length > 0) {\n\t\t\tthis.msg.warning('Please wait while uploading file ...');\n\t\t\tthis.uploader.onCompleteItem = (i: any, resp: string, code: number) => {\n\t\t\t\tif (code == 0) {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(new Error()));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (code != 200) {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tlet err = new Error()\n\t\t\t\t\tif (respJson.error) {\n\t\t\t\t\t\terr.message = respJson.error;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(this.dvc.getError(err)));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tvar reqId = respJson.requestId;\n\t\t\t\t\tthis.workerstatus.requestId = reqId;\n\t\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\t\tthis.importStatus(this.workerstatus);\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\tthis.clearSelectedFile();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tlet fi = this.uploader.queue[0];\n\t\t\tfi.upload();\n\t\t} else {\n\t\t\tthis.msg.error('File not selected.');\n\t\t}\n\t}\n\n\t@ViewChild('selectedFile') selectedFile: any;\n\tclearSelectedFile() {\n\t\tthis.selectedFile.nativeElement.value = '';\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list`]);\n\t}\n\n\tdisableUpload() {\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t}\n\tsetNavParams(req: NoGoEnhanceWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/import`], { queryParams: this.dvc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\timportStatus(req: NoGoEnhanceWorkerStatus) {\n\t\t// get the status after successfully uploaded, from here it means it did upload successfully, now get the status of import\n\t\t// start in 50 milliseconds and loop every 2sec\n\t\tthis.sub = timer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.dvc.noGoEnhanceImportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: NoGoEnhanceWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tconsole.log(ws);\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while importing. Imported ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.success(`Import completed with ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(this.dvc.getError(err)));\n\t\t\t});\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t\tif(this.sub){\n\t\t\tthis.sub.complete();\n\t\t}\n\t }\n\n}\n","\n
\n
\n \n
\n
\n
\n
\n \n \n\t\t\t\t\t Go Back\n
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tdelete all |\n\t\t\t\t\t\t import |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n
NameAddress StateDate Of BirthReferenceNotesSchool GroupSourceChanged AtRecord IDActions
{{row.name}}{{row.addressState}}{{row.dateOfBirth | date:\"MM/dd/yyyy\"}}{{row.referenceType}}{{row.notes}}{{row.schoolGroupName}}{{row.source}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}{{row.uid}}\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\tFiles ({{row.files.length}}) |\n\t\t\t\t\t\t\t\t\t\t\t\t\tEdit |\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n \n
\n\t\t
","import { OnInit, OnDestroy, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle, Breadcrumb } from '../title';\nimport { DistrictService } from '../district.service';\nimport { AlertDirective } from '../alert.directive';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { Account, validateToken } from '../account.service';\nimport { OffClickDirective } from \"../off_click.directive\";\nimport { User } from '../user';\nimport { Subscription } from 'rxjs/Rx';\n\nimport { NoGoEnhance } from './nogo-enhance';\nimport { NoGoEnhanceTextSearch } from './nogo-enhance-text-search';\nimport { NoGoEnhanceRequest } from './nogo-enhance-request';\nimport { NoGoEnhanceReply } from './nogo-enhance-reply';\nimport { NoGoEnhanceExportCSVReply } from './nogo-enhance-export-csv-reply';\nimport { NoGoEnhanceCount } from './nogo-enhance-count';\nimport { NoGoEnhanceView } from \"./nogo-enhance-view\";\nimport { Observable } from 'rxjs/Observable';\nimport { Observer } from 'rxjs/Observer';\nimport { isDateSet } from '../date_helper';\n\n@Component({\n\tselector: 'nogo-enhance-list',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n
\n \n \n\t\t\t\t\t Go Back\n
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tdelete all |\n\t\t\t\t\t\t import |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n
NameAddress StateDate Of BirthReferenceNotesSchool GroupSourceChanged AtRecord IDActions
{{row.name}}{{row.addressState}}{{row.dateOfBirth | date:\"MM/dd/yyyy\"}}{{row.referenceType}}{{row.notes}}{{row.schoolGroupName}}{{row.source}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}{{row.uid}}\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\tFiles ({{row.files.length}}) |\n\t\t\t\t\t\t\t\t\t\t\t\t\tEdit |\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n \n
\n\t\t
`,\n\t\t preserveWhitespaces:true,\n})\n\nexport class NoGoEnhanceListComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmsgYesNo: Alert;\n\n\tfobj: NoGoEnhanceTextSearch;\n\tdata: NoGoEnhanceView[];\n\n\tacctNumber: string;\n\tpageSizeParam: string;\n\tpageParam: string;\n\tmaxPageSize: number;\n\tfromPage: number;\n\ttoPage: number;\n\trowCount: number;\n\tdisablePreviousPage: boolean;\n\tdisableNextPage: boolean;\n\tsearchQueryParam: string;\n\tdisableLastPage:boolean;\n\tlastPage: number;\n\n\tuser: User;\n\tprivate subscriptionQueryParams: Subscription;\n\n\tconstructor(\n\t\tprivate account: Account,\n\t\tprivate router: Router,\n\t\tprivate dvc: DistrictService,\n\t\tfb: FormBuilder,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.msgYesNo = new Alert();\n\n\t\tthis.fobj = new NoGoEnhanceTextSearch()\n\t\tthis.fobj.pageSize = this.maxPageSize;\n\t\tthis.data = [];\n\n\t\tthis.maxPageSize = 20;\n\t\tthis.fromPage = 0;\n\t\tthis.toPage = 0;\n\t\tthis.rowCount = 0;\n\t\tthis.lastPage = 0;\n\t\tthis.disableLastPage = true;\n\t\tthis.disablePreviousPage = true;\n\t\tthis.disableNextPage = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.pageSizeParam = params['pageSize']\n\t\t\t\tthis.pageParam = params['page']\n\t\t\t\tthis.setFormNavParams(this.fobj);\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'NoGo Enhanced List',\n\t\t\tdashboard: 'NoGo Enhanced List',\n\t\t});\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'NoGo Enhanced List', link: '' },\n\t\t]);\n\t}\n\n\tnoGoEnhanceToView(r: NoGoEnhance): NoGoEnhanceView {\n\t\tlet e = new NoGoEnhanceView();\n\t\te.id = r.id;\n\t\te.name = `${r.lastName}, ${r.firstName} ${r.middleName}`;\n\t\te.addressState = r.addressState;\n\t\te.notes = r.notes;\n\t\te.changedAt = (typeof r.updatedAt === 'string') ? r.createdAt : r.updatedAt;\n\t\te.source = 'NA';\n\t\te.schoolGroupName = r.schoolGroupName;\n\t\tif (r.schoolGroupName === \"\"){\n\t\t\te.schoolGroupName = \"None\"\n\t\t}\n\t\tif (r.schoolGroupName === \"all\"){\n\t\t\te.schoolGroupName = \"All\"\n\t\t}\n\t\te.referenceType = r.referenceType\n\t\te.dateOfBirth = r.dateOfBirth;\n\t\te.uid = r.uid;\n\t\tif (r.source == 'district') {\n\t\t\te.source = 'District';\n\t\t\te.readOnly = false;\n\t\t} else if (r.source == 'sis') {\n\t\t\te.source = 'Sis';\n\t\t\te.readOnly = true;\n\t\t}\n\t\te.hasFile = r.hasFile;\n\t\te.files = r.files;\n\n\t\treturn e;\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\trefresh() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tthis.msg.close();\n\t\tthis.msgHead.close();\n\t\tthis.msgYesNo.close();\n\t\tthis.fobj.page = 1; //start from page 1, this prevents the page number not equal to this new results\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t}\n\n\tremove(row: NoGoEnhanceView) {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tthis.msgYesNo.close();\n\t\tthis.dvc.noGoEnhanceRemoveApi(this.acctNumber, row.id)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.msg.success('Successfully removed selected record.');\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tedit(row: NoGoEnhanceView) {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/${row.id}/edit`]);\n\t}\n\n\taddNew() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/add`]);\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}`]);\n\t}\n\n\tloadData() {\n\t\tthis.data = [];\n\n\t\tthis.dvc.noGoEnhanceSearchApi(this.acctNumber, this.fobj).subscribe((rows: NoGoEnhance[]) => {\n\t\t\tfor (let e of rows) {\n\t\t\t\tthis.data.push(this.noGoEnhanceToView(e));\n\t\t\t}\n\t\t\tthis.rowCount = rows.length;\n\t\t\tthis.disablePreviousPage = this.fobj.page == 1;\n\t\t\tthis.maxPageSize = this.fobj.pageSize;\n\t\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t\tthis.toPage = (this.maxPageSize * (this.fobj.page));\n\t\t\t} else {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t}\n\n\t\t\tthis.dvc.noGoEnhanceSearchCountApi(this.acctNumber, this.fobj).subscribe(resp => {\n\t\t\t\tlet count = resp.count;\n\t\t\t\tthis.rowCount = count;\n\t\t\t\tif (this.data.length < this.maxPageSize) {\n\t\t\t\t\tthis.toPage = count;\n\t\t\t\t}\n\t\t\t\tthis.disableNextPage = this.getToPage() >= count;\n\t\t\t\tthis.lastPage = Math.ceil(count/this.maxPageSize);\n\t\t\t\tthis.disableLastPage = this.getToPage() >= count;\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tgetFromPage(): number {\n\t\treturn this.fromPage;\n\t}\n\n\tgetToPage(): number {\n\t\treturn this.toPage;\n\t}\n\n\tprevPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page -= 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tfirstPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page = 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tnextPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.fobj.page + 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\ttoLastPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.lastPage;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tsetNavParams(req: NoGoEnhanceTextSearch): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['searchQuery'] = req.query;\n\t\tparams['page'] = req.page;\n\t\tparams['pageSize'] = req.pageSize;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list`], { queryParams: this.dvc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\n\tsetFormNavParams(f: NoGoEnhanceTextSearch) {\n\t\tlet dec = decodeURIComponent;\n\n\t\tf.query = this.searchQueryParam != null ? dec(this.searchQueryParam) : '';\n\t\tf.pageSize = this.pageSizeParam != null ? parseInt(dec(this.pageSizeParam)) : 20;\n\t\tf.page = this.pageParam != null ? parseInt(dec(this.pageParam)) : 1;\n\t}\n\n\tdeleteAllConfirmation() {\n\t\tthis.msg.close();\n\t\tthis.msgYesNo.warningHtml(`Are you sure to remove all results from current search?`);\n\t}\n\n\tdeleteAll() {\n\t\tthis.msg.info('Removing results from current search ...');\n\t\tthis.dvc.noGoEnhanceRemoveAllApi(this.acctNumber, this.fobj)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.data = [];\n\t\t\t\tthis.msg.success('Successfully removed all results from current search.');\n\t\t\t\tif (this.fobj.query != '') {\n\t\t\t\t\tthis.fobj.query = '';\n\t\t\t\t\tthis.refresh();\n\t\t\t\t}\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\timportc() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/import`]);\n\t}\n\n\texportc() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/export`], { queryParams: { searchQuery: this.searchQueryParam } });\n\t}\n\n\tmsgYesNoRespond(respond: any) {\n\t\tif (respond == 'yes') {\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.msgYesNo.close();\n\t\t\t\tthis.deleteAll();\n\t\t\t});\n\t\t} else if (respond == 'no') {\n\t\t\tthis.msgYesNo.close();\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => { });\n\t\t}\n\t}\n\n\tfiles(r: NoGoEnhanceView) {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list/${r.id}/files`]);\n\t}\n\n}\n","export class NoGoEnhanceRequest {\n\tuid: string;\n\tfirstName: string;\n\tmiddleName: string;\n\tlastName: string;\n\tdateOfBirth: Date;\n\taddressState: string;\n\tnotes: string;\n\tschoolGroupID: number;\n\n\tconstructor() {\n\t\tthis.uid = '';\n\t\tthis.firstName = '';\n\t\tthis.middleName = '';\n\t\tthis.lastName = '';\n\t\tthis.dateOfBirth = null;\n\t\tthis.addressState = '';\n\t\tthis.notes = '';\n\t\tthis.schoolGroupID = 0;\n\t}\n}\n","export class NoGoEnhanceTextSearch {\n\tquery: string;\n\tdateFormat: string;\n\tpage: number;\n\tpageSize: number;\n\n\tconstructor() {\n\t\tthis.query = '';\n\t\tthis.dateFormat = '';\n\t\tthis.page = 1;\n\t\tthis.pageSize = 1;\n\t}\n}\n","import { NoGoEnhanceFile } from './nogo-enhance-file';\nexport class NoGoEnhanceView {\n\tid: number;\n\tname: string;\n\taddressState: string;\n\tdateOfBirth: Date;\n\tnotes: string;\n\tchangedAt: Date;\n\tsource: string;\n\treadOnly: boolean;\n\treferenceType: string;\n\thasFile: boolean;\n\tschoolGroupName: string;\n\tfiles: NoGoEnhanceFile[];\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.name = '';\n\t\tthis.addressState = '';\n\t\tthis.dateOfBirth = new Date();\n\t\tthis.notes = '';\n\t\tthis.changedAt = new Date();\n\t\tthis.source = '';\n\t\tthis.readOnly = false;\n\t\tthis.referenceType = '';\n\t\tthis.schoolGroupName = '';\n\t\tthis.uid = '';\n\t}\n}\n","export class NoGoEnhanceWorkerStatus {\n\trequestId: string;\n\tlastSequenceId: number;\n\n\tconstructor() {\n\t\tthis.requestId = '';\n\t\tthis.lastSequenceId = 0;\n\t}\n}\n","\n
\n
\n \n
\n
\n
\n\t\t
\n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Record ID

\n\t\t\t\t\t\t\t\t\t \t \n\t\t\t\t\t\t\t\t \t
\n
\n

First Name

\n \n
\n
\n

Middle Name

\n \n
\n
\n

Last Name

\n \n
\n
\n

Date Of Birth

\n \n
\n
\n

Address State

\n \n
\n
\n

Notes

\n\t\t\t\t\t\t\t\t\t\t \n
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n ","import { OnInit, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { AlertDirective } from '../alert.directive';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { Account, validateToken } from '../account.service';\nimport { OffClickDirective } from \"../off_click.directive\";\nimport { User } from '../user';\nimport { Subscription } from 'rxjs/Rx';\nimport { NoGoEnhance } from './nogo-enhance';\nimport { NoGoEnhanceFind } from './nogo-enhance-find';\nimport { NoGoEnhanceRequest } from './nogo-enhance-request';\nimport { DropdownOption } from '../dropdown_option';\nimport { trimReturnKey } from '../strings';\nimport { usStates } from '../us-states';\nimport { slashDateToDate, dateFormat, isDateSet } from '../date_helper';\nimport { SchoolGroup } from './school_group'\nimport { SchoolGroupFind } from './find_school_group';\n\n@Component({\n\tselector: 'nogo-enhance',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n\t\t
\n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Record ID

\n\t\t\t\t\t\t\t\t\t \t \n\t\t\t\t\t\t\t\t \t
\n
\n

First Name

\n \n
\n
\n

Middle Name

\n \n
\n
\n

Last Name

\n \n
\n
\n

Date Of Birth

\n \n
\n
\n

Address State

\n \n
\n
\n

Notes

\n\t\t\t\t\t\t\t\t\t\t \n
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n `,\n\t preserveWhitespaces:true,\n})\n\nexport class NoGoEnhanceComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tdata: NoGoEnhance;\n\tacctNumber: string;\n\tuser: User;\n\tform: FormGroup;\n\tidParam: string;\n\teditMode: boolean;\n\tschoolGroup: SchoolGroup[];\n\tschoolGroupIDValue: string;\n\taddressStates: DropdownOption[];\n\tsaveCount: number;\n\tprivate subscriptionQueryParams: Subscription;\n\tdateOfBirthStr: string;\n\tridplaceholder: string;\n\n\tconstructor(private account: Account, private router: Router, private dvc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.data = new NoGoEnhance();\n\t\tthis.form = fb.group({\n\t\t\tschoolGroup: ['', Validators.compose([Validators.required])],\n\t\t\trecordIdentifier: ['', Validators.compose([Validators.maxLength(20)])],\n\t\t\tfirstName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tlastName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tmiddleName: ['', Validators.maxLength(25)],\n\t\t\tdateOfBirth: ['', AppValidators.date],\n\t\t\taddressState: ['', Validators.maxLength(2)],\n\t\t\tnotes: ['', Validators.maxLength(500)],\n\t\t});\n\t\tthis.editMode = false;\n\t\tthis.schoolGroup = [];\n\t\tthis.schoolGroupIDValue = '1';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tif (params['schoolGroupIDValue']) {\n\t\t\t\t\tthis.schoolGroupIDValue = params['schoolGroupIDValue']\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\tthis.saveCount = 1;\n\t\tthis.dateOfBirthStr = '';\n\t\tthis.ridplaceholder = 'This id is unique identifier, leave empty if you don\\'t know'\n\t}\n\n\tngOnInit() {\n\t\tlet titleStr = 'Add New';\n\t\tlet action = 'add';\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Add New - NoGo Enhanced',\n\t\t\tdashboard: 'Add New - NoGo Enhanced',\n\t\t});\n\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.idParam = this.activatedRoute.snapshot.params['id'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tif (this.idParam) {\n\t\t\tthis.editMode = true;\n\t\t\tthis.loadData();\n\t\t\tthis.title.setTitles({\n\t\t\t\ttitle: 'Edit - NoGo Enhanced',\n\t\t\t\tdashboard: 'Edit - NoGo Enhanced',\n\t\t\t});\n\t\t\ttitleStr = 'Edit';\n\t\t\taction = 'edit';\n\t\t}\n\t\tthis.loadSchoolGroupList();\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'NoGo Enhanced List', link: `/settings/${this.acctNumber}/nogo-enhance-list` },\n\t\t\t{ title: titleStr, link: '' },\n\t\t]);\n\n\t\tthis.addressStates = [{ id: '', title: 'None' }];\n\t\tthis.addressStates = this.addressStates.concat(usStates());\n\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/nogo-enhance-list`]);\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\tloadData() {\n\t\tlet find = new NoGoEnhanceFind();\n\t\tfind.id = parseInt(this.idParam);\n\t\tthis.dvc.noGoEnhanceFindApi(this.acctNumber, find).subscribe((rows: NoGoEnhance[]) => {\n\t\t\tthis.msg.close();\n\t\t\tthis.data = rows[0];\n\t\t\tthis.schoolGroupIDValue = this.data.schoolGroupID.toString();\n\t\t\tthis.form.get('schoolGroup').setValue(this.data.schoolGroupID);\n\t\t\tthis.form.get('firstName').setValue(this.data.firstName);\n\t\t\tthis.form.get('middleName').setValue(this.data.middleName);\n\t\t\tthis.form.get('lastName').setValue(this.data.lastName);\n\t\t\tthis.form.get('addressState').setValue(this.data.addressState);\n\t\t\tthis.form.get('recordIdentifier').setValue(this.data.uid);\n\t\t\tif (isDateSet(this.data.dateOfBirth)) {\n\t\t\t\tthis.dateOfBirthStr = dateFormat(this.data.dateOfBirth, '01/02/2006');\n\t\t\t}\n\t\t\tthis.form.get('notes').setValue(this.data.notes);\n\t\t\tthis.form.get('dateOfBirth').setValue(this.dateOfBirthStr);\n\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tloadSchoolGroupList() {\n\t\tlet na0 = new SchoolGroup();\n\t\tna0.schoolGroupID = 1;\n\t\tna0.name = 'None';\n\t\tthis.schoolGroup.push(na0);\n\t\tlet fp = new SchoolGroupFind();\n\t\tfp.page = 1;\n\t\tfp.pageSize = 100;\n\t\tthis.dvc.schoolGroupFindApi(this.acctNumber, fp).subscribe((sg: SchoolGroup[]) => {\n\t\t\tsg.forEach((v => {\n\t\t\t\t// exclude: 1 is students and 2 is pre-approved visitors, 3 student contacts\n\t\t\t\tthis.schoolGroup.push(v);\n\t\t\t}));\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.dvc.isErrNotFound(err)) {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tviewToRequest(r: NoGoEnhance): NoGoEnhanceRequest {\n\t\tlet ret = new NoGoEnhanceRequest();\n\t\tret.schoolGroupID = parseInt(this.schoolGroupIDValue);\n\t\tret.uid = r.uid;\n\t\tret.firstName = trimReturnKey(r.firstName);\n\t\tret.lastName = trimReturnKey(r.lastName);\n\t\tret.middleName = trimReturnKey(r.middleName);\n\t\tif (this.dateOfBirthStr !== '') {\n\t\t\tlet dob = slashDateToDate(this.dateOfBirthStr);\n\t\t\tret.dateOfBirth = dob\n\t\t}\n\t\tret.addressState = trimReturnKey(r.addressState);\n\t\tret.notes = trimReturnKey(r.notes);\n\t\treturn ret;\n\t}\n\n\tsave() {\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.schoolGroupIDValue = this.form.get('schoolGroup').value;\n\t\tthis.data.firstName = this.form.get('firstName').value;\n\t\tthis.data.middleName = this.form.get('middleName').value;\n\t\tthis.data.lastName = this.form.get('lastName').value;\n\t\tthis.data.addressState = this.form.get('addressState').value;\n\t\tthis.data.notes = this.form.get('notes').value;\n\t\tthis.dateOfBirthStr = this.form.get('dateOfBirth').value;\n\t\tthis.data.uid = this.form.get('recordIdentifier').value;\n\t\tif (this.editMode) {\n\t\t\tthis.dvc.noGoEnhanceUpdateApi(this.acctNumber, this.data.id, this.viewToRequest(this.data))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.dvc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.goBack();\n\t\t\t\t\t}, 1000)\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t} else {\n\t\t\tthis.dvc.noGoEnhanceAddApi(this.acctNumber, this.viewToRequest(this.data))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.dvc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t}\n\t}\n\n\tclearForm() {\n\t\tthis.form.reset({\n\t\t\tfirstName: '',\n\t\t\tlastName: '',\n\t\t\tmiddleName: '',\n\t\t\tdateOfBirth: '',\n\t\t\taddressState: '',\n\t\t\tnotes: '',\n\t\t\tschoolGroupID: 0,\n\t\t\trecordIdentifier: '',\n\t\t});\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\n}\n","import { NoGoEnhanceFile } from './nogo-enhance-file';\nexport class NoGoEnhance {\n\tid: number;\n\tfirstName: string;\n\tmiddleName: string;\n\tlastName: string;\n\tdateOfBirth: Date;\n\taddressState: string;\n\tnotes: string;\n\treferenceId: string;\n\treferenceType: string;\n\thasFile: boolean;\n\tcreatedAt: Date;\n\tupdatedAt: Date;\n\tsource: string;\n\tschoolGroupName: string;\n\tschoolGroupID: number;\n\tfiles: NoGoEnhanceFile[];\n\tuid;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.middleName = '';\n\t\tthis.lastName = '';\n\t\tthis.dateOfBirth = null;\n\t\tthis.addressState = '';\n\t\tthis.notes = '';\n\t\tthis.referenceId = '';\n\t\tthis.referenceType = '';\n\t\tthis.hasFile = false;\n\t\tthis.createdAt = new Date();\n\t\tthis.updatedAt = null;\n\t\tthis.files = [];\n\t\tthis.schoolGroupID = 0;\n\t\tthis.schoolGroupName = '';\n\t\tthis.uid = '';\n\t}\n}\n","\n
\n
\n \n
\n
\n
\n\t\t
\n\t\t\t\t\t
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \t\t\t
\n
\n

Category

\n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t Add New Category\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t

Record ID

\n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t
\n
\n

First Name

\n \n
\n
\n

Middle Name

\n \n
\n
\n

Last Name

\n \n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n

Field 1

\n \n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n

Field 2

\n \n
\n
\n

Field 3

\n \n
\n
\n

Field 4

\n \n
\n
\n

Field 5

\n \n
\n
\n

Field 6

\n \n
\n
\n

Field 7

\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n ","/// \nimport { OnInit, Component, OnDestroy } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { AlertDirective } from '../alert.directive';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { Account, validateToken } from '../account.service';\nimport { OffClickDirective } from \"../off_click.directive\";\nimport { User } from '../user';\nimport { Subscription } from 'rxjs/Rx';\nimport { Preloaded } from './preloaded';\nimport { DropdownOption } from \"../dropdown_option\";\nimport { PreloadedFind } from \"./preloaded_find\";\nimport { PreloadedRequest } from \"./preloaded_request\";\nimport { PreloadedCategory } from \"./preloaded_category\";\nimport { PreloadedCategoryFind } from './preloaded_category_find';\nimport { trimReturnKey } from '../strings';\nimport { SchoolGroup } from './school_group';\nimport { SchoolGroupFind } from './find_school_group';\n\n@Component({\n\tselector: 'preloaded',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n\t\t
\n\t\t\t\t\t
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \t\t\t
\n
\n

Category

\n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t Add New Category\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t

Record ID

\n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t
\n
\n

First Name

\n \n
\n
\n

Middle Name

\n \n
\n
\n

Last Name

\n \n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n

Field 1

\n \n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n

Field 2

\n \n
\n
\n

Field 3

\n \n
\n
\n

Field 4

\n \n
\n
\n

Field 5

\n \n
\n
\n

Field 6

\n \n
\n
\n

Field 7

\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n `,\n\t preserveWhitespaces:true,\n})\n\nexport class PreloadedComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tdata: Preloaded;\n\tacctNumber: string;\n\tuser: User;\n\tform: FormGroup;\n\tidParam: string;\n\teditMode: boolean;\n\tschoolGroup: SchoolGroup[];\n\tschoolGroupIDValue: string;\n\tpreloadedCategories: PreloadedCategory[];\n\tpreloadedCategoryIdValue: string;\n\tprivate subscriptionQueryParams: Subscription;\n\tsaveCount: number;\n\tridplaceholder: string;\n\n\tconstructor(\n\t\tprivate account: Account,\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tfb: FormBuilder,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.data = new Preloaded();\n\t\tthis.form = fb.group({\n\t\t\tschoolGroup: ['', Validators.compose([Validators.required])],\n\t\t\trecordIdentifier: ['', Validators.compose([Validators.maxLength(20)])],\n\t\t\tpreloadedCategoryId: ['', Validators.compose([Validators.required])],\n\t\t\tfirstName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tlastName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tmiddleName: ['', Validators.maxLength(25)],\n\t\t\tfield1: ['', Validators.maxLength(50)],\n\t\t\tfield2: ['', Validators.maxLength(50)],\n\t\t\tfield3: ['', Validators.maxLength(50)],\n\t\t\tfield4: ['', Validators.maxLength(50)],\n\t\t\tfield5: ['', Validators.maxLength(50)],\n\t\t\tfield6: ['', Validators.maxLength(50)],\n\t\t\tfield7: ['', Validators.maxLength(50)],\n\t\t});\n\t\tthis.editMode = false;\n\t\tthis.preloadedCategories = [];\n\t\tthis.preloadedCategoryIdValue = '0';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tif (params['preloadedCategoryIdValue']) {\n\t\t\t\t\tthis.preloadedCategoryIdValue = params['preloadedCategoryIdValue']\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\tthis.schoolGroup = [];\n\t\tthis.schoolGroupIDValue = '1';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tif (params['schoolGroupIDValue']) {\n\t\t\t\t\tthis.schoolGroupIDValue = params['schoolGroupIDValue']\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\tthis.saveCount = 1;\n\t\tthis.ridplaceholder = 'This id is unique identifier, leave empty if you don\\'t know'\n\t}\n\n\tngOnInit() {\n\t\tlet titleStr = 'Add New';\n\t\tlet action = 'add';\n\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.idParam = this.activatedRoute.snapshot.params['id'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tif (this.idParam) {\n\t\t\tthis.editMode = true;\n\t\t\tthis.loadData();\n\t\t\ttitleStr = 'Edit';\n\t\t\taction = 'edit';\n\t\t}\n\t\tthis.loadSchoolGroupList();\n\t\tthis.loadPreloadedCategories();\n\t\tthis.title.setTitles({\n\t\t\ttitle: `${titleStr} - Preloaded List`,\n\t\t\tdashboard: `${titleStr} - Preloaded List`,\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Preloaded List', link: `/settings/${this.acctNumber}/preloaded-list` },\n\t\t\t{ title: titleStr, link: '' }\n\t\t]);\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\tloadData() {\n\t\tlet find = new PreloadedFind();\n\t\tfind.id = parseInt(this.idParam);\n\t\tthis.svc.preloadedFindApi(this.acctNumber, find).subscribe((rows: Preloaded[]) => {\n\t\t\tthis.msg.close();\n\t\t\tthis.data = rows[0];\n\t\t\tthis.schoolGroupIDValue = this.data.schoolGroupID.toString();\n\t\t\tthis.preloadedCategoryIdValue = this.data.preloadedCategoryId.toString();\n\t\t\tthis.form.get('schoolGroup').setValue(this.data.schoolGroupID);\n\t\t\tthis.form.get('recordIdentifier').setValue(this.data.uid);\n\t\t\tthis.form.get('preloadedCategoryId').setValue(this.data.preloadedCategoryId);\n\t\t\tthis.form.get('firstName').setValue(this.data.firstName);\n\t\t\tthis.form.get('middleName').setValue(this.data.middleName);\n\t\t\tthis.form.get('lastName').setValue(this.data.lastName);\n\t\t\tthis.form.get('field1').setValue(this.data.field1);\n\t\t\tthis.form.get('field2').setValue(this.data.field2);\n\t\t\tthis.form.get('field3').setValue(this.data.field3);\n\t\t\tthis.form.get('field4').setValue(this.data.field4);\n\t\t\tthis.form.get('field5').setValue(this.data.field5);\n\t\t\tthis.form.get('field6').setValue(this.data.field6);\n\t\t\tthis.form.get('field7').setValue(this.data.field7);\n\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tloadPreloadedCategories() {\n\t\tlet na0 = new PreloadedCategory();\n\t\tna0.preloadedCategoryId = 0;\n\t\tna0.preloadedCategoryName = 'None';\n\t\tthis.preloadedCategories.push(na0);\n\t\tlet fp = new PreloadedCategoryFind();\n\t\tthis.svc.preloadedCategoryFindApi(this.acctNumber, fp).subscribe((pc: PreloadedCategory[]) => {\n\t\t\tpc.forEach((v => {\n\t\t\t\tthis.preloadedCategories.push(v);\n\t\t\t}));\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.svc.isErrNotFound(err)) {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tloadSchoolGroupList() {\n\t\tlet na0 = new SchoolGroup();\n\t\tna0.schoolGroupID = 1;\n\t\tna0.name = 'None';\n\t\tthis.schoolGroup.push(na0);\n\t\tlet fp = new SchoolGroupFind();\n\t\tfp.page = 1;\n\t\tfp.pageSize = 100;\n\t\tthis.svc.schoolGroupFindApi(this.acctNumber, fp).subscribe((sg: SchoolGroup[]) => {\n\t\t\tsg.forEach((v => {\n\t\t\t\tthis.schoolGroup.push(v);\n\t\t\t}));\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.svc.isErrNotFound(err)) {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tviewToRequest(r: Preloaded): PreloadedRequest {\n\t\tlet ret = new PreloadedRequest();\n\t\tret.schoolGroupID = parseInt(this.schoolGroupIDValue);\n\t\tret.uid = r.uid;\n\t\tret.preloadedCategoryId = parseInt(this.preloadedCategoryIdValue);\n\t\tret.firstName = trimReturnKey(r.firstName);\n\t\tret.lastName = trimReturnKey(r.lastName);\n\t\tret.middleName = trimReturnKey(r.middleName);\n\t\tret.field1 = trimReturnKey(r.field1);\n\t\tret.field2 = trimReturnKey(r.field2);\n\t\tret.field3 = trimReturnKey(r.field3);\n\t\tret.field4 = trimReturnKey(r.field4);\n\t\tret.field5 = trimReturnKey(r.field5);\n\t\tret.field6 = trimReturnKey(r.field6);\n\t\tret.field7 = trimReturnKey(r.field7);\n\t\treturn ret;\n\t}\n\n\tsave() {\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.schoolGroupIDValue = this.form.get('schoolGroup').value;\n\t\tthis.preloadedCategoryIdValue = this.form.get('preloadedCategoryId').value;\n\t\tthis.data.uid = this.form.get('recordIdentifier').value;\n\t\tthis.data.firstName = this.form.get('firstName').value;\n\t\tthis.data.middleName = this.form.get('middleName').value;\n\t\tthis.data.lastName = this.form.get('lastName').value;\n\t\tthis.data.field1 = this.form.get('field1').value;\n\t\tthis.data.field2 = this.form.get('field2').value;\n\t\tthis.data.field3 = this.form.get('field3').value;\n\t\tthis.data.field4 = this.form.get('field4').value;\n\t\tthis.data.field5 = this.form.get('field5').value;\n\t\tthis.data.field6 = this.form.get('field6').value;\n\t\tthis.data.field7 = this.form.get('field7').value;\n\n\t\tif (this.editMode) {\n\t\t\tthis.svc.preloadedUpdateApi(this.acctNumber, this.data.id, this.viewToRequest(this.data))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.svc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t} else {\n\t\t\tthis.svc.preloadedAddApi(this.acctNumber, this.viewToRequest(this.data))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.svc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t}\n\t}\n\n\tclearForm() {\n\t\tthis.form.reset({\n\t\t\tfirstName: '',\n\t\t\tlastName: '',\n\t\t\tmiddleName: '',\n\t\t\trecordIdentifier: '',\n\t\t\tpreloadedCategoryId: 0,\n\t\t\tfield1: '',\n\t\t\tfield2: '',\n\t\t\tfield3: '',\n\t\t\tfield4: '',\n\t\t\tfield5: '',\n\t\t\tfield6: '',\n\t\t\tfield7: '',\n\t\t});\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list`]);\n\t}\n\n\taddNewCategory() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category`], { queryParams: { 'goback': 'preloaded-list-add' } });\n\t}\n\n}\n","export class Preloaded {\n\tid: number;\n\tfirstName: string;\n\tlastName: string;\n\tmiddleName: string;\n\tpreloadedCategoryId: number;\n\tpreloadedCategoryName: string;\n\tfield1: string;\n\tfield2: string;\n\tfield3: string;\n\tfield4: string;\n\tfield5: string;\n\tfield6: string;\n\tfield7: string;\n\tcreatedAt: Date;\n\tupdatedAt: Date;\n\tschoolGroupID: number;\n\tschoolGroupName: string;\n\tsource: string;\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.middleName = '';\n\t\tthis.preloadedCategoryId = 0;\n\t\tthis.preloadedCategoryName = '';\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t\tthis.field3 = '';\n\t\tthis.field4 = '';\n\t\tthis.field5 = '';\n\t\tthis.field6 = '';\n\t\tthis.field7 = '';\n\t\tthis.createdAt = new Date();\n\t\tthis.updatedAt = new Date();\n\t\tthis.source = '';\n\t\tthis.schoolGroupName = '';\n\t\tthis.schoolGroupID = 0;\n\t\tthis.uid = '';\n\t}\n}\n","export class PreloadedCategory {\n\tid: number;\n\tpreloadedCategoryId: number;\n\tpreloadedCategoryName: string;\n\tcreatedAt: Date;\n\tupdatedAt: Date;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.preloadedCategoryId = 0;\n\t\tthis.preloadedCategoryName = '';\n\t\tthis.createdAt = new Date();\n\t\tthis.updatedAt = new Date();\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","/// \nimport { OnInit, Component, ViewChild } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { PreloadedCategoryExport } from './preloaded_category_export';\nimport { PreloadedCategoryExportCSVReply } from './preloaded_category_export_csv_reply';\nimport { PreloadedCategoryWorkerStatus } from './preloaded_category_worker_status_request';\nimport { PreloadedCategoryWorkerStatusReply } from './preloaded_category_worker_status';\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'preloaded-category-export',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class PreloadedCategoryExportComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\n\tacctNumber: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tsubscriptionQueryParams: Subscription;\n\tsearchQueryParam: string;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: PreloadedCategoryWorkerStatus;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Export - Pre-Loaded Category List',\n\t\t\tdashboard: 'Export - Pre-Loaded Category List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.searchQueryParam = '';\n\t\tthis.workerstatus = new PreloadedCategoryWorkerStatus();\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Pre-Loaded List', link: `/settings/${this.acctNumber}/preloaded-list` },\n\t\t\t{ title: 'Pre-Loaded Category List', link: `/settings/${this.acctNumber}/preloaded-list/category` },\n\t\t\t{ title: 'Export', link: '' }\n\t\t]);\n\t}\n\n\texportFile() {\n\t\tlet tx = new PreloadedCategoryExport();\n\t\ttx.fileVersion = this.fileVersion;\n\t\ttx.textSearch.query = this.searchQueryParam;\n\n\t\tthis.msg.warningHtml('Preparing CSV file, please wait ...');\n\t\tthis.svc.preloadedCategoryExportCsvApi(this.acctNumber, tx)\n\t\t\t.subscribe(resp => {\n\t\t\t\tthis.workerstatus.requestId = resp.requestId;\n\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\tthis.exportStatus(this.workerstatus, resp);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category`]);\n\t}\n\n\texportStatus(req: PreloadedCategoryWorkerStatus, csvurl: PreloadedCategoryExportCSVReply) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.preloadedCategoryExportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: PreloadedCategoryWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! CSV file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\tsetNavParams(req: PreloadedCategoryWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category/export`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n}\n","import { PreloadedCategoryTextSearch } from \"./preloaded_category_text_search\"\n\nexport class PreloadedCategoryExport {\n\ttextSearch: PreloadedCategoryTextSearch;\n\tseparator: string;\n\tuseCrlf: boolean;\n\tfileVersion: string;\n\trequestId: string;\n\n\tconstructor() {\n\t\tthis.textSearch = new PreloadedCategoryTextSearch();\n\t\tthis.separator = '';\n\t\tthis.useCrlf = true;\n\t\tthis.fileVersion = '';\n\t\tthis.requestId = '';\n\t}\n}\n","export class PreloadedCategoryFind {\n\tid: number;\n\tpreloadedCategoryId: number;\n\tpreloadedCategoryName: string;\n\tpage: number;\n\tpageSize: number;\n\n\tconstructor() {\n\t\tthis.page = 1;\n\t\tthis.pageSize = 1000;\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","/// \nimport { OnInit, Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { FileUploader, FileItem } from \"ng2-file-upload\";\nimport { PreloadedCategoryWorkerStatus } from \"./preloaded_category_worker_status_request\";\nimport { PreloadedCategoryWorkerStatusReply } from \"./preloaded_category_worker_status\";\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'preloaded-category-import',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class PreloadedCategoryImportComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\n\tacctNumber: string;\n\turl: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tuploader: FileUploader;\n\tfileTitle: string;\n\tuploadDisabled: boolean;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: PreloadedCategoryWorkerStatus;\n\tprivate subscriptionQueryParams: Subscription;\n\tprivate sub: any;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Import - Pre-Loaded Category List',\n\t\t\tdashboard: 'Import - Pre-Loaded Category List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\n\t\tthis.url = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t\tthis.workerstatus = new PreloadedCategoryWorkerStatus();\n\t\tthis.workerstatus.requestId = this.requestId;\n\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.loadUploader();\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tif (this.requestId != null) {\n\t\t\tthis.workerstatus.requestId = this.requestId;\n\t\t\tthis.workerstatus.lastSequenceId = parseInt(this.sequenceId);\n\t\t\tthis.importStatus(this.workerstatus);\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Pre-Loaded List', link: `/settings/${this.acctNumber}/preloaded-list` },\n\t\t\t{ title: 'Pre-Loaded Category List', link: `/settings/${this.acctNumber}/preloaded-list/category` },\n\t\t\t{ title: 'Import', link: '' }\n\t\t]);\n\t}\n\n\tloadUploader() {\n\t\tthis.url = this.svc.preloadedCategoryImportCsvUrl(this.acctNumber);\n\t\tlet token = this.svc.getToken();\n\t\tthis.uploader = new FileUploader({ url: this.url, authToken: `${token.tokenType} ${token.accessToken}` });\n\t\tthis.uploader.onAfterAddingFile = (item: FileItem) => {\n\t\t\t//After file is added on queue, enable Upload button and file name\n\t\t\tthis.fileTitle = item.file.name;\n\t\t\tthis.uploadDisabled = false;\n\t\t}\n\t}\n\n\tonChange(event: any) {\n\n\t}\n\n\tonClick() {\n\t\tthis.uploader.clearQueue();\n\t\tthis.disableUpload();\n\t}\n\n\tupload() {\n\t\t// set to vars when different scope\n\t\tvar fileVer = this.fileVersion;\n\t\t// send other params with file\n\t\tthis.uploader.onBuildItemForm = function (fileItem, form) {\n\t\t\tform.append('fileVersion', fileVer);\n\t\t\treturn { fileItem, form }\n\t\t};\n\n\t\tif (this.uploader.queue.length > 0) {\n\t\t\tthis.msg.warning('Please wait while uploading file ...');\n\t\t\tthis.uploader.onCompleteItem = (i: any, resp: string, code: number) => {\n\t\t\t\tif (code == 0) {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(new Error()));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (code != 200) {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tlet err = new Error()\n\t\t\t\t\tif (respJson.error) {\n\t\t\t\t\t\terr.message = respJson.error;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tvar reqId = respJson.requestId;\n\t\t\t\t\tthis.workerstatus.requestId = reqId;\n\t\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\t\tthis.importStatus(this.workerstatus);\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\tthis.clearSelectedFile();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tlet fi = this.uploader.queue[0];\n\t\t\tfi.upload();\n\t\t} else {\n\t\t\tthis.msg.error('File not selected.');\n\t\t}\n\t}\n\n\t@ViewChild('selectedFile') selectedFile: any;\n\tclearSelectedFile() {\n\t\tthis.selectedFile.nativeElement.value = '';\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category`]);\n\t}\n\n\tdisableUpload() {\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t}\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t\tif(this.sub){\n\t\t\tthis.sub.complete();\n\t\t}\n\t}\n\tsetNavParams(req: PreloadedCategoryWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category/import`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\timportStatus(req: PreloadedCategoryWorkerStatus) {\n\t\t// get the status after successfully uploaded, from here it means it did upload successfully, now get the status of import\n\t\t// start in 50 milliseconds and loop every 2sec\n\t\tthis.sub = timer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.preloadedCategoryImportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: PreloadedCategoryWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tconsole.log(ws);\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while importing. Imported ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.success(`Import completed with ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\n\t}\n}\n","\n
\n
\n \n
\n
\n
\n
\n \n \n\t\t\t\t\t Go Back\n
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\t delete all |\n\t\t\t\t\t\timport |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t \n\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n \n \n
CategoryChanged AtActions
\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t \n Cancel |\n Save\n
\n\t\t\t\t\t\t\t\t\t\t\t\t{{row.preloadedCategoryName}}\n\t\t\t\t\t\t\t\t\t\t\t\t{{row.preloadedCategoryName}}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t\t\t\t\t |\n\t\t\t\t\t\t\t\t\t\t\t\t\tSave\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t \t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n
\n
","/// \nimport { OnInit, Component, OnDestroy } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from '../alert';\nimport { Account, validateToken } from '../account.service';\nimport { User } from '../user';\nimport { Subscription } from 'rxjs/Rx';\nimport { PreloadedCategory } from './preloaded_category';\nimport { PreloadedCategoryTextSearch } from './preloaded_category_text_search';\nimport { PreloadedCategoryRequest } from './preloaded_category_request';\nimport { PreloadedCategoryView } from \"./preloaded_category_view\";\nimport { Observable } from 'rxjs/Observable';\nimport { Observer } from 'rxjs/Observer';\nimport { trimReturnKey } from '../strings';\n\n@Component({\n\tselector: 'preloaded-category-list',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n
\n \n \n\t\t\t\t\t Go Back\n
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\t delete all |\n\t\t\t\t\t\timport |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t \n\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n \n \n
CategoryChanged AtActions
\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t \n Cancel |\n Save\n
\n\t\t\t\t\t\t\t\t\t\t\t\t{{row.preloadedCategoryName}}\n\t\t\t\t\t\t\t\t\t\t\t\t{{row.preloadedCategoryName}}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t\t\t\t\t |\n\t\t\t\t\t\t\t\t\t\t\t\t\tSave\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t \t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n
\n
`,\n\t\t preserveWhitespaces:true,\n})\n\nexport class PreloadedCategoryListComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmsgYesNoDeleteAll: Alert;\n\tmsgYesNoDelete: Alert;\n\n\tfobj: PreloadedCategoryTextSearch;\n\tdata: PreloadedCategoryView[];\n\n\tacctNumber: string;\n\tpageSizeParam: string;\n\tpageParam: string;\n\tmaxPageSize: number;\n\tfromPage: number;\n\ttoPage: number;\n\trowCount: number;\n\tdisablePreviousPage: boolean;\n\tdisableNextPage: boolean;\n\tsearchQueryParam: string;\n\n\tuser: User;\n\tprivate subscriptionQueryParams: Subscription;\n\n\tshowAdd: boolean;\n\tcategoryAdd: string;\n\tgobackParam: string;\n\tpreloadedCategoryIdValue: string;\n\n\tcurrentRow: PreloadedCategoryView;\n\n\tconstructor(\n\t\tprivate account: Account,\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tfb: FormBuilder,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Pre-Loaded Category List',\n\t\t\tdashboard: 'Pre-Loaded Category List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.msgYesNoDeleteAll = new Alert();\n\t\tthis.msgYesNoDelete = new Alert();\n\n\t\tthis.fobj = new PreloadedCategoryTextSearch()\n\t\tthis.fobj.pageSize = this.maxPageSize;\n\t\tthis.data = [];\n\n\t\tthis.maxPageSize = 20;\n\t\tthis.fromPage = 0;\n\t\tthis.toPage = 0;\n\t\tthis.rowCount = 0;\n\t\tthis.disablePreviousPage = true;\n\t\tthis.disableNextPage = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tif (params['goback']) {\n\t\t\t\t\tthis.gobackParam = params['goback']\n\t\t\t\t}\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.pageSizeParam = params['pageSize']\n\t\t\t\tthis.pageParam = params['page']\n\t\t\t\tthis.setFormNavParams(this.fobj);\n\t\t\t}\n\t\t);\n\t\tthis.showAdd = false;\n\t\tif (this.gobackParam == \"preloaded-list-add\") {\n\t\t\tthis.showAdd = true;\n\t\t}\n\t\tthis.categoryAdd = '';\n\t\tthis.preloadedCategoryIdValue = '0';\n\t\tthis.currentRow = null;\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Pre-Loaded List', link: `/settings/${this.acctNumber}/preloaded-list` },\n\t\t\t{ title: 'Pre-Loaded Category List', link: '' }\n\t\t]);\n\t}\n\n\tpreloadedCategoryToView(r: PreloadedCategory): PreloadedCategoryView {\n\t\tlet e = new PreloadedCategoryView();\n\t\te.id = r.id;\n\t\te.preloadedCategoryId = r.preloadedCategoryId;\n\t\te.preloadedCategoryName = r.preloadedCategoryName;\n\t\te.changedAt = (typeof r.updatedAt === 'string') ? r.createdAt : r.updatedAt;\n\n\t\treturn e;\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\trefresh() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tthis.msg.close();\n\t\tthis.msgHead.close();\n\t\tthis.msgYesNoDeleteAll.close();\n\t\tthis.msgYesNoDelete.close();\n\t\tthis.fobj.page = 1; //start from page 1, this prevents the page number not equal to this new results\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t}\n\n\tdeleteConfirmation(row: PreloadedCategoryView) {\n\t\tthis.currentRow = row;\n\t\tthis.msg.close();\n\t\tthis.msgYesNoDelete.warningHtml(`Are you sure to remove all preloaded names in this category?`);\n\t}\n\n\tmsgYesNoDeleteRespond(respond: any) {\n\t\tif (respond == 'yes') {\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.msgYesNoDelete.close();\n\t\t\t\tthis.remove(this.currentRow);\n\t\t\t});\n\t\t} else if (respond == 'no') {\n\t\t\tthis.currentRow = null;\n\t\t\tthis.msgYesNoDelete.close();\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => { });\n\t\t}\n\t}\n\n\tremove(row: PreloadedCategoryView) {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tthis.msgYesNoDeleteAll.close();\n\t\tthis.msgYesNoDelete.close();\n\t\tthis.svc.preloadedCategoryRemoveApi(this.acctNumber, row.id)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.currentRow = null;\n\t\t\t\tthis.msg.success('Successfully removed selected record.');\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tgoBack() {\n\t\tconsole.log(this.gobackParam);\n\t\tif (this.gobackParam == 'preloaded-list-add') {\n\t\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/add`], { queryParams: { 'preloadedCategoryIdValue': this.preloadedCategoryIdValue } });\n\t\t} else {\n\t\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list`]);\n\t\t}\n\t}\n\n\tloadData() {\n\t\tthis.data = [];\n\n\t\tthis.svc.preloadedCategorySearchApi(this.acctNumber, this.fobj).subscribe((rows: PreloadedCategory[]) => {\n\t\t\tfor (let e of rows) {\n\t\t\t\t// exclude: 1 is students and 2 is pre-approved visitors, 3 student contacts\n\t\t\t\tif (e.preloadedCategoryId > 3) {\n\t\t\t\t\tthis.data.push(this.preloadedCategoryToView(e));\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.rowCount = rows.length;\n\t\t\tthis.disablePreviousPage = this.fobj.page == 1;\n\t\t\tthis.maxPageSize = this.fobj.pageSize;\n\t\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t\tthis.toPage = (this.maxPageSize * (this.fobj.page));\n\t\t\t} else {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t}\n\n\t\t\tthis.svc.preloadedCategorySearchCountApi(this.acctNumber, this.fobj).subscribe(resp => {\n\t\t\t\tlet count = resp.count;\n\t\t\t\tthis.rowCount = count;\n\t\t\t\tif (this.data.length < this.maxPageSize) {\n\t\t\t\t\tthis.toPage = count;\n\t\t\t\t}\n\t\t\t\tthis.disableNextPage = this.getToPage() >= count;\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tgetFromPage(): number {\n\t\treturn this.fromPage;\n\t}\n\n\tgetToPage(): number {\n\t\treturn this.toPage;\n\t}\n\n\tprevPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page -= 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tfirstPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page = 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tnextPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.fobj.page + 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tsetNavParams(req: PreloadedCategoryTextSearch): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['searchQuery'] = req.query;\n\t\tparams['page'] = req.page;\n\t\tparams['pageSize'] = req.pageSize;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\n\tsetFormNavParams(f: PreloadedCategoryTextSearch) {\n\t\tlet dec = decodeURIComponent;\n\n\t\tf.query = this.searchQueryParam != null ? dec(this.searchQueryParam) : '';\n\t\tf.pageSize = this.pageSizeParam != null ? parseInt(dec(this.pageSizeParam)) : 20;\n\t\tf.page = this.pageParam != null ? parseInt(dec(this.pageParam)) : 1;\n\t}\n\n\tdeleteAllConfirmation() {\n\t\tthis.msg.close();\n\t\tthis.msgYesNoDeleteAll.warningHtml(`Are you sure to remove all results from current search including preloaded names?`);\n\t}\n\n\tdeleteAll() {\n\t\tthis.msg.info('Removing results from current search ...');\n\t\tthis.svc.preloadedCategoryRemoveAllApi(this.acctNumber, this.fobj)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.data = [];\n\t\t\t\tthis.msg.success('Successfully removed all results from current search.');\n\t\t\t\tif (this.fobj.query != '') {\n\t\t\t\t\tthis.fobj.query = '';\n\t\t\t\t\tthis.refresh();\n\t\t\t\t}\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\timport() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category/import`]);\n\t}\n\n\texport() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category/export`]);\n\t}\n\n\tmsgYesNoDeleteAllRespond(respond: any) {\n\t\tif (respond == 'yes') {\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.msgYesNoDeleteAll.close();\n\t\t\t\tthis.deleteAll();\n\t\t\t});\n\t\t} else if (respond == 'no') {\n\t\t\tthis.msgYesNoDeleteAll.close();\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => { });\n\t\t}\n\t}\n\n\tonRowClick(row: PreloadedCategoryView) {\n\t\tthis.msg.close();\n\t\trow.show = !row.show\n\t}\n\n\tshow(pc: PreloadedCategoryView): boolean {\n\t\tif (pc.show == null) {\n\t\t\tpc.show = true;\n\t\t}\n\t\treturn pc.show;\n\t}\n\n\taddNew() {\n\t\tthis.msg.close();\n\t\tthis.showAdd = true;\n\t\tthis.categoryAdd = '';\n\t}\n\n\tsave() {\n\t\tif (this.categoryAdd != '') {\n\t\t\tlet e = new PreloadedCategoryView();\n\t\t\te.preloadedCategoryName = trimReturnKey(this.categoryAdd);\n\n\t\t\tthis.svc.preloadedCategoryAddApi(this.acctNumber, this.viewToRequest(e))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tthis.preloadedCategoryIdValue = res.preloadedCategoryId.toString();\n\t\t\t\t\tthis.refresh();\n\t\t\t\t\tthis.msg.success('Successfully saved.');\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\n\t\t\tthis.showAdd = false;\n\t\t\tthis.categoryAdd = '';\n\t\t}\n\t}\n\n\tupdate(row: PreloadedCategoryView) {\n\t\tif (row.preloadedCategoryName != '') {\n\t\t\tthis.svc.preloadedCategoryUpdateApi(this.acctNumber, row.id, this.viewToRequest(row))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tthis.msg.success('Successfully saved.');\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t\trow.show = true;\n\t\t}\n\t}\n\n\tviewToRequest(r: PreloadedCategoryView): PreloadedCategoryRequest {\n\t\tlet ret = new PreloadedCategoryRequest();\n\t\tret.preloadedCategoryName = trimReturnKey(r.preloadedCategoryName);\n\t\treturn ret;\n\t}\n\n\tedit(row: PreloadedCategoryView) {\n\t\tthis.msg.close();\n\t\trow.show = !row.show\n\t}\n\n\tcancel() {\n\t\tthis.msg.close();\n\t\tthis.showAdd = false;\n\t\tthis.categoryAdd = '';\n\t}\n\n\n}\n","export class PreloadedCategoryRequest {\n\tpreloadedCategoryId: number;\n\tpreloadedCategoryName: string;\n\n\tconstructor() {\n\t\tthis.preloadedCategoryName = '';\n\t}\n}\n","export class PreloadedCategoryTextSearch {\n\tquery: string;\n\tdateFormat: string;\n\tpage: number;\n\tpageSize: number;\n\n\tconstructor() {\n\t\tthis.query = '';\n\t\tthis.dateFormat = '';\n\t\tthis.page = 0;\n\t\tthis.pageSize = 0;\n\t}\n}\n","export class PreloadedCategoryView {\n\tid: number;\n\tpreloadedCategoryId: number;\n\tpreloadedCategoryName: string;\n\tchangedAt: Date;\n\tshow: boolean;\n\treadOnly: boolean;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.preloadedCategoryId = 0;\n\t\tthis.preloadedCategoryName = '';\n\t\tthis.changedAt = new Date();\n\t\tthis.show = true;\n\t\tthis.readOnly = false;\n\t}\n}\n","export class PreloadedCategoryWorkerStatus {\n\trequestId: string;\n\tlastSequenceId: number;\n\n\tconstructor() {\n\t\tthis.requestId = '';\n\t\tthis.lastSequenceId = 0;\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","/// \nimport { OnInit, Component, ViewChild } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { PreloadedExport } from './preloaded_export';\nimport { PreloadedExportCSVReply } from './preloaded_export_csv_reply';\nimport { PreloadedWorkerStatus } from \"./preloaded_worker_status_request\";\nimport { PreloadedWorkerStatusReply } from \"./preloaded_worker_status\";\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'preloaded-export',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class PreloadedExportComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\n\tacctNumber: string;\n\tgoBackName: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tsubscriptionQueryParams: Subscription;\n\tsearchQueryParam: string;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: PreloadedWorkerStatus;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Export - Pre-Loaded List',\n\t\t\tdashboard: 'Export - Pre-Loaded List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.searchQueryParam = '';\n\t\tthis.workerstatus = new PreloadedWorkerStatus();\n\n\t\tthis.goBackName = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.goBackName = `/settings/${this.acctNumber}/preloaded-list`;\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Pre-Loaded List', link: `/settings/${this.acctNumber}/preloaded-list` },\n\t\t\t{ title: 'Export', link: '' }\n\t\t]);\n\t}\n\n\texportFile() {\n\t\tlet tx = new PreloadedExport();\n\t\ttx.fileVersion = this.fileVersion;\n\t\ttx.textSearch.query = this.searchQueryParam;\n\n\t\tthis.msg.warningHtml('Preparing CSV file, please wait ...');\n\t\tthis.svc.preloadedExportCsvApi(this.acctNumber, tx)\n\t\t\t.subscribe(resp => {\n\t\t\t\tthis.workerstatus.requestId = resp.requestId;\n\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\tthis.exportStatus(this.workerstatus, resp);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list`]);\n\t}\n\n\texportStatus(req: PreloadedWorkerStatus, csvurl: PreloadedExportCSVReply) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.preloadedExportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: PreloadedWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! CSV file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\tsetNavParams(req: PreloadedWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/preloaded-list/export`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n}\n","import { PreloadedTextSearch } from \"./preloaded_text_search\"\n\nexport class PreloadedExport {\n\ttextSearch: PreloadedTextSearch;\n\tseparator: string;\n\tuseCrlf: boolean;\n\tfileVersion: string;\n\trequestId: string;\n\n\tconstructor() {\n\t\tthis.textSearch = new PreloadedTextSearch();\n\t\tthis.separator = '';\n\t\tthis.useCrlf = true;\n\t\tthis.fileVersion = '';\n\t\tthis.requestId = '';\n\t}\n}\n","export class PreloadedFind {\n\tid: number;\n\tfirstName: string;\n\tlastName: string;\n\tmiddleName: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.middleName = '';\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","/// \nimport { OnInit, Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { FileUploader, FileItem } from \"ng2-file-upload\";\nimport { PreloadedWorkerStatus } from \"./preloaded_worker_status_request\";\nimport { PreloadedWorkerStatusReply } from \"./preloaded_worker_status\";\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'preloaded-import',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class PreloadedImportComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\n\tacctNumber: string;\n\turl: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tuploader: FileUploader;\n\tfileTitle: string;\n\tuploadDisabled: boolean;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: PreloadedWorkerStatus;\n\tprivate subscriptionQueryParams: Subscription;\n\tprivate sub: any;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Import - Pre-Loaded List',\n\t\t\tdashboard: 'Import - Pre-Loaded List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.workerstatus = new PreloadedWorkerStatus();\n\t\tthis.workerstatus.requestId = this.requestId;\n\n\t\tthis.url = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web District Manager v3.0', id: 'web_district_manager_v3_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.loadUploader();\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tif (this.requestId != null) {\n\t\t\tthis.workerstatus.requestId = this.requestId;\n\t\t\tthis.workerstatus.lastSequenceId = parseInt(this.sequenceId);\n\t\t\tthis.importStatus(this.workerstatus);\n\t\t}\n\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Pre-Loaded List', link: `/settings/${this.acctNumber}/preloaded-list` },\n\t\t\t{ title: 'Import', link: '' }\n\t\t]);\n\t}\n\n\tloadUploader() {\n\t\tthis.url = this.svc.preloadedImportCsvUrl(this.acctNumber);\n\t\tlet token = this.svc.getToken();\n\t\tthis.uploader = new FileUploader({ url: this.url, authToken: `${token.tokenType} ${token.accessToken}` });\n\t\tthis.uploader.onAfterAddingFile = (item: FileItem) => {\n\t\t\t//After file is added on queue, enable Upload button and file name\n\t\t\tthis.fileTitle = item.file.name;\n\t\t\tthis.uploadDisabled = false;\n\t\t}\n\t}\n\n\tonChange(event: any) {\n\n\t}\n\n\tonClick() {\n\t\tthis.uploader.clearQueue();\n\t\tthis.disableUpload();\n\t}\n\n\tupload() {\n\t\tvar fileVer = this.fileVersion;\n\t\tthis.uploader.onBuildItemForm = function (fileItem, form) {\n\t\t\tform.append('fileVersion', fileVer);\n\t\t\treturn { fileItem, form }\n\t\t};\n\t\tif (this.uploader.queue.length > 0) {\n\t\t\tthis.msg.warning('Please wait while uploading file ...');\n\t\t\tthis.uploader.onCompleteItem = (i: any, resp: string, code: number) => {\n\t\t\t\tif (code == 0) {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(new Error()));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (code != 200) {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tlet err = new Error()\n\t\t\t\t\tif (respJson.error) {\n\t\t\t\t\t\terr.message = respJson.error;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tvar reqId = respJson.requestId;\n\t\t\t\t\tthis.workerstatus.requestId = reqId;\n\t\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\t\tthis.importStatus(this.workerstatus);\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\tthis.clearSelectedFile();\n\t\t\t\t}\n\t\t\t};\n\t\t\tlet fi = this.uploader.queue[0];\n\t\t\tfi.upload();\n\t\t} else {\n\t\t\tthis.msg.error('File not selected.');\n\t\t}\n\t}\n\n\t@ViewChild('selectedFile') selectedFile: any;\n\tclearSelectedFile() {\n\t\tthis.selectedFile.nativeElement.value = '';\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list`]);\n\t}\n\n\tdisableUpload() {\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t}\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t\tif(this.sub){\n\t\t\tthis.sub.complete();\n\t\t}\n\t }\n\tsetNavParams(req: PreloadedWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/preloaded-list/import`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\timportStatus(req: PreloadedWorkerStatus) {\n\t\tthis.sub = timer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.preloadedImportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: PreloadedWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tconsole.log(ws);\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while importing. Imported ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.success(`Import completed with ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\n}\n","\n
\n
\n \n
\n
\n
\n
\n\t\t\t\t\t \n \n \n\t\t\t\t\t Go Back\n
\n
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tdelete all |\n\t\t\t\t\t\timport |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n
NameCategoryFieldsSchool GroupChanged AtRecord IDActions
{{row.name}}{{row.preloadedCategoryName}}{{row.fields}}{{row.schoolGroupName}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}{{row.uid}}\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t\t\t\t |\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n \n
\n
","/// \nimport { Component, OnInit, OnDestroy } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from '../alert';\nimport { Account, validateToken } from '../account.service';\nimport { User } from '../user';\nimport { Subscription } from 'rxjs/Rx';\n\nimport { Preloaded } from './preloaded';\nimport { PreloadedTextSearch } from './preloaded_text_search';\nimport { PreloadedView } from \"./preloaded_view\";\nimport { Observable } from 'rxjs/Observable';\nimport { Observer } from 'rxjs/Observer';\n\n@Component({\n\tselector: 'preloaded-list',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n
\n\t\t\t\t\t \n \n \n\t\t\t\t\t Go Back\n
\n
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tdelete all |\n\t\t\t\t\t\timport |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n
NameCategoryFieldsSchool GroupChanged AtRecord IDActions
{{row.name}}{{row.preloadedCategoryName}}{{row.fields}}{{row.schoolGroupName}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}{{row.uid}}\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t\t\t\t |\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n \n
\n
`,\n\t\t preserveWhitespaces:true,\n})\n\nexport class PreloadedListComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmsgYesNo: Alert;\n\n\tfobj: PreloadedTextSearch;\n\tdata: PreloadedView[];\n\n\tacctNumber: string;\n\tpageSizeParam: string;\n\tpageParam: string;\n\tmaxPageSize: number;\n\tfromPage: number;\n\ttoPage: number;\n\trowCount: number;\n\tdisablePreviousPage: boolean;\n\tdisableNextPage: boolean;\n\tsearchQueryParam: string;\n\tdisableLastPage:boolean;\n\tlastPage: number;\n\n\tuser: User;\n\tprivate subscriptionQueryParams: Subscription;\n\n\tconstructor(\n\t\tprivate account: Account,\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tfb: FormBuilder,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.msgYesNo = new Alert();\n\n\t\tthis.fobj = new PreloadedTextSearch()\n\t\tthis.fobj.pageSize = this.maxPageSize;\n\t\tthis.data = [];\n\n\t\tthis.maxPageSize = 20;\n\t\tthis.fromPage = 0;\n\t\tthis.toPage = 0;\n\t\tthis.rowCount = 0;\n\t\tthis.lastPage = 0;\n\t\tthis.disableLastPage = true;\n\t\tthis.disablePreviousPage = true;\n\t\tthis.disableNextPage = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.pageSizeParam = params['pageSize']\n\t\t\t\tthis.pageParam = params['page']\n\t\t\t\tthis.setFormNavParams(this.fobj);\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Preloaded List',\n\t\t\tdashboard: 'Preloaded List'\n\t\t});\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'Preloaded List', link: '' },\n\t\t]);\n\t}\n\n\tpreloadedToView(r: Preloaded): PreloadedView {\n\t\tlet e = new PreloadedView();\n\t\te.id = r.id;\n\t\te.uid = r.uid;\n\t\te.name = `${r.lastName}, ${r.firstName} ${r.middleName}`;\n\t\te.preloadedCategoryName = r.preloadedCategoryName;\n\t\tif (r.preloadedCategoryName === \"\"){\n\t\t\te.preloadedCategoryName = \"None\"\n\t\t}\n\t\tlet fls = this.fieldsToArray(r);\n\t\te.fields = this.fieldsToString(fls);\n\t\te.schoolGroupName = r.schoolGroupName;\n\t\tif (r.schoolGroupName === \"\"){\n\t\t\te.schoolGroupName = \"None\"\n\t\t}\n\t\tif (r.schoolGroupName === \"all\"){\n\t\t\te.schoolGroupName = \"All\"\n\t\t}\n\t\te.changedAt = (typeof r.updatedAt === 'string') ? r.createdAt : r.updatedAt;\n\n\t\treturn e;\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\trefresh() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tthis.msg.close();\n\t\tthis.msgHead.close();\n\t\tthis.msgYesNo.close();\n\t\tthis.fobj.page = 1; //start from page 1, this prevents the page number not equal to this new results\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t}\n\n\tremove(row: PreloadedView) {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tthis.msgYesNo.close();\n\t\tthis.svc.preloadedRemoveApi(this.acctNumber, row.id)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.msg.success('Successfully removed selected record.');\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tedit(row: PreloadedView) {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/${row.id}/edit`]);\n\t}\n\n\taddNew() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/add`]);\n\t}\n\n\tcategories() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/category`], { queryParams: { 'goback': 'preloaded-list' } });\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}`]);\n\t}\n\n\tloadData() {\n\t\tthis.data = [];\n\n\t\tthis.svc.preloadedSearchApi(this.acctNumber, this.fobj).subscribe((rows: Preloaded[]) => {\n\t\t\tfor (let e of rows) {\n\t\t\t\tthis.data.push(this.preloadedToView(e));\n\t\t\t}\n\t\t\tthis.rowCount = rows.length;\n\t\t\tthis.disablePreviousPage = this.fobj.page == 1;\n\t\t\tthis.maxPageSize = this.fobj.pageSize;\n\t\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t\tthis.toPage = (this.maxPageSize * (this.fobj.page));\n\t\t\t} else {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t}\n\n\t\t\tthis.svc.preloadedSearchCountApi(this.acctNumber, this.fobj).subscribe(resp => {\n\t\t\t\tlet count = resp.count;\n\t\t\t\tthis.rowCount = count;\n\t\t\t\tif (this.data.length < this.maxPageSize) {\n\t\t\t\t\tthis.toPage = count;\n\t\t\t\t}\n\t\t\t\tthis.disableNextPage = this.getToPage() >= count;\n\t\t\t\tthis.lastPage = Math.ceil(count/this.maxPageSize);\n\t\t\t\tthis.disableLastPage = this.getToPage() >= count;\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tgetFromPage(): number {\n\t\treturn this.fromPage;\n\t}\n\n\tgetToPage(): number {\n\t\treturn this.toPage;\n\t}\n\n\tprevPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page -= 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tfirstPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page = 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tnextPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.fobj.page + 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\ttoLastPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.lastPage;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tsetNavParams(req: PreloadedTextSearch): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['searchQuery'] = req.query;\n\t\tparams['page'] = req.page;\n\t\tparams['pageSize'] = req.pageSize;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/preloaded-list`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\n\tsetFormNavParams(f: PreloadedTextSearch) {\n\t\tlet dec = decodeURIComponent;\n\n\t\tf.query = this.searchQueryParam != null ? dec(this.searchQueryParam) : '';\n\t\tf.pageSize = this.pageSizeParam != null ? parseInt(dec(this.pageSizeParam)) : 20;\n\t\tf.page = this.pageParam != null ? parseInt(dec(this.pageParam)) : 1;\n\t}\n\n\tdeleteAllConfirmation() {\n\t\tthis.msgYesNo.warningHtml(`Are you sure to remove all results from current search?`);\n\t}\n\n\tdeleteAll() {\n\t\tthis.msg.info('Removing results from current search ...');\n\t\tthis.svc.preloadedRemoveAllApi(this.acctNumber, this.fobj)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.data = [];\n\t\t\t\tthis.msg.success('Successfully removed all results from current search.');\n\t\t\t\tif (this.fobj.query != '') {\n\t\t\t\t\tthis.fobj.query = '';\n\t\t\t\t\tthis.refresh();\n\t\t\t\t}\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\timportNav() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/import`]);\n\t}\n\n\texportNav() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/preloaded-list/export`], { queryParams: { searchQuery: this.searchQueryParam } });\n\t}\n\n\tmsgYesNoRespond(respond: any) {\n\t\tif (respond == 'yes') {\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.msgYesNo.close();\n\t\t\t\tthis.deleteAll();\n\t\t\t});\n\t\t} else if (respond == 'no') {\n\t\t\tthis.msgYesNo.close();\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => { });\n\t\t}\n\t}\n\n\tfieldsToArray(c: Preloaded): string[] {\n\t\tlet i: string[] = [];\n\t\tif (c.field1 != '') {\n\t\t\ti.push(c.field1);\n\t\t}\n\t\tif (c.field2 != '') {\n\t\t\ti.push(c.field2);\n\t\t}\n\t\tif (c.field3 != '') {\n\t\t\ti.push(c.field3);\n\t\t}\n\t\tif (c.field4 != '') {\n\t\t\ti.push(c.field4);\n\t\t}\n\t\tif (c.field5 != '') {\n\t\t\ti.push(c.field5);\n\t\t}\n\t\tif (c.field6 != '') {\n\t\t\ti.push(c.field6);\n\t\t}\n\t\tif (c.field7 != '') {\n\t\t\ti.push(c.field7);\n\t\t}\n\t\treturn i;\n\t}\n\n\tfieldsToString(s: string[]): string {\n\t\tlet str = '';\n\t\tlet n = 0;\n\t\tfor (let i = 0; i < s.length; i++) {\n\t\t\tn = i + 1;\n\t\t\tstr += n + ': ' + s[i];\n\t\t\tif (i < s.length - 1) {\n\t\t\t\tstr += ', ';\n\t\t\t}\n\t\t}\n\t\treturn str;\n\t}\n\n\n}\n","export class PreloadedRequest {\n\tid: number;\n\tfirstName: string;\n\tlastName: string;\n\tmiddleName: string;\n\tpreloadedCategoryId: number;\n\tfield1: string;\n\tfield2: string;\n\tfield3: string;\n\tfield4: string;\n\tfield5: string;\n\tfield6: string;\n\tfield7: string;\n\tschoolGroupID: number;\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.middleName = '';\n\t\tthis.preloadedCategoryId = 0;\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t\tthis.field3 = '';\n\t\tthis.field4 = '';\n\t\tthis.field5 = '';\n\t\tthis.field6 = '';\n\t\tthis.field7 = '';\n\t\tthis.schoolGroupID = 0;\n\t\tthis.uid = '';\n\t}\n}\n","export class PreloadedTextSearch {\n\tquery: string;\n\tdateFormat: string;\n\tpage: number;\n\tpageSize: number;\n\n\tconstructor() {\n\t\tthis.query = '';\n\t\tthis.dateFormat = '';\n\t\tthis.page = 0;\n\t\tthis.pageSize = 0;\n\t}\n}\n","export class PreloadedView {\n\tid: number;\n\tname: string;\n\tpreloadedCategoryName: string;\n\tfields: string;\n\tchangedAt: Date;\n\treadOnly: boolean;\n\tschoolGroupName: string;\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.name = '';\n\t\tthis.preloadedCategoryName = '';\n\t\tthis.fields = '';\n\t\tthis.changedAt = new Date();\n\t\tthis.readOnly = false;\n\t\tthis.schoolGroupName = '';\n\t\tthis.uid = '';\n\t}\n}\n","export class PreloadedWorkerStatus {\n\trequestId: string;\n\tlastSequenceId: number;\n\n\tconstructor() {\n\t\tthis.requestId = '';\n\t\tthis.lastSequenceId = 0;\n\t}\n}\n","\n
\n
\n \n
\n
\n
\n\t\t
\n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Badge Name

\n\t\t\t\t\t\t\t\t\t \t\n
\n\t\t\t\t\t\t\t\t\t
\n

Record ID

\n \n
\n\t\t\t\t\t\t\t\t\t
\n

First Name

\n \n
\n
\n

Middle Name

\n \n
\n
\n

Last Name

\n \n
\n
\n

Card ID

\n \n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \t\t\t
\n
\n

Field 2

\n \n
\n
\n

Field 3

\n \n
\n
\n

Field 4

\n \n
\n
\n

Field 5

\n \n
\n
\n

Field 6

\n \n
\n
\n

Field 7

\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n ","/// \nimport { OnInit, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators, SelectControlValueAccessor } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { AlertDirective } from '../alert.directive';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { Account, validateToken } from '../account.service';\nimport { OffClickDirective } from \"../off_click.directive\";\nimport { User } from '../user';\nimport { Subscription } from 'rxjs/Rx';\nimport { RfidUsers } from './rfid_users';\nimport { RfidUsersFind } from './rfid_users_find';\nimport { RfidUsersRequest } from './rfid_users_request';\nimport { DropdownOption } from '../dropdown_option';\n// import { BadgeSettings } from './badge_settings';\nimport { trimReturnKey } from '../strings';\nimport { SchoolGroup } from './school_group';\nimport { SchoolGroupFind } from './find_school_group';\nimport { Badge } from './badge';\nimport { FindBadge } from './find_badge';\n\n@Component({\n\tselector: 'rfid-users',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n\t\t
\n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

School Group

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Badge Name

\n\t\t\t\t\t\t\t\t\t \t\n
\n\t\t\t\t\t\t\t\t\t
\n

Record ID

\n \n
\n\t\t\t\t\t\t\t\t\t
\n

First Name

\n \n
\n
\n

Middle Name

\n \n
\n
\n

Last Name

\n \n
\n
\n

Card ID

\n \n
\n
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t

Field 1

\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \t\t\t
\n
\n

Field 2

\n \n
\n
\n

Field 3

\n \n
\n
\n

Field 4

\n \n
\n
\n

Field 5

\n \n
\n
\n

Field 6

\n \n
\n
\n

Field 7

\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n\t\t\t\t\t Clear Form\n\t\t\t\t\t Go Back\n
\n
\n
\n
\n \n
\n
\n `,\n\t preserveWhitespaces:true,\n})\n\nexport class RfidUsersComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tdata: RfidUsers;\n\tacctNumber: string;\n\tuser: User;\n\tform: FormGroup;\n\tidParam: string;\n\teditMode: boolean;\n\tbadgeName: string;\n\tschoolGroup: SchoolGroup[];\n\tschoolGroupIDValue: string;\n\tprivate subscriptionQueryParams: Subscription;\n\tsaveCount: number;\n\tbadge: Badge[];\n\tbadgeNumberValue: string;\n\tridplaceholder: string;\n\n\tconstructor(private account: Account, private router: Router, private svc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.data = new RfidUsers();\n\t\tthis.form = fb.group({\n\t\t\tschoolGroup: ['', Validators.compose([Validators.required])],\n\t\t\trecordIdentifier: ['', Validators.compose([Validators.maxLength(16)])],\n\t\t\tbadgeName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tfirstName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tlastName: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t\tmiddleName: ['', Validators.maxLength(25)],\n\t\t\tcardId: ['', Validators.compose([Validators.required, Validators.maxLength(26)])],\n\t\t\tfield1: ['', Validators.maxLength(50)],\n\t\t\tfield2: ['', Validators.maxLength(50)],\n\t\t\tfield3: ['', Validators.maxLength(50)],\n\t\t\tfield4: ['', Validators.maxLength(50)],\n\t\t\tfield5: ['', Validators.maxLength(50)],\n\t\t\tfield6: ['', Validators.maxLength(50)],\n\t\t\tfield7: ['', Validators.maxLength(50)],\n\t\t});\n\t\tthis.editMode = false;\n\t\tthis.badgeName = '';\n\t\tthis.saveCount = 1;\n\t\tthis.schoolGroup = [];\n\t\tthis.badge = [];\n\t\tthis.schoolGroupIDValue = '1';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tif (params['schoolGroupIDValue']) {\n\t\t\t\t\tthis.schoolGroupIDValue = params['schoolGroupIDValue']\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\tthis.ridplaceholder = 'This id is unique identifier, leave empty if you don\\'t know'\n\t}\n\n\tngOnInit() {\n\t\tlet titleStr = 'Add New';\n\t\tlet action = 'add';\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Add New - RFID User List',\n\t\t\tdashboard: 'Add New - RFID User List',\n\t\t});\n\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.idParam = this.activatedRoute.snapshot.params['id'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tif (this.idParam) {\n\t\t\tthis.editMode = true;\n\t\t\tthis.loadData();\n\t\t\tthis.title.setTitles({\n\t\t\t\ttitle: 'Edit - RFID User List',\n\t\t\t\tdashboard: 'Edit - RFID User List',\n\t\t\t});\n\t\t\ttitleStr = 'Edit';\n\t\t\taction = 'edit';\n\t\t}\n\t\tthis.loadSchoolGroupList();\n\t\tthis.loadBadgeList();\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'RFID User List', link: `/settings/${this.acctNumber}/rfid-users-list` },\n\t\t\t{ title: titleStr, link: '' },\n\t\t]);\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list`]);\n\t}\n\n\tloadData() {\n\t\tlet find = new RfidUsersFind();\n\t\tfind.id = parseInt(this.idParam);\n\t\tthis.svc.rfidUsersFindApi(this.acctNumber, find).subscribe((rows: RfidUsers[]) => {\n\t\t\tthis.msg.close();\n\t\t\tthis.data = rows[0];\n\t\t\tthis.schoolGroupIDValue = this.data.schoolGroupID.toString();\n\t\t\tthis.form.get('schoolGroup').setValue(this.data.schoolGroupID);\n\t\t\tthis.form.get('recordIdentifier').setValue(this.data.uid);\n\t\t\tthis.badgeNumberValue = this.data.badgeNumber.toString();\n\t\t\tthis.form.get('badgeName').setValue(this.data.badgeNumber);\n\t\t\tthis.form.get('firstName').setValue(this.data.firstName);\n\t\t\tthis.form.get('middleName').setValue(this.data.middleName);\n\t\t\tthis.form.get('lastName').setValue(this.data.lastName);\n\t\t\tthis.form.get('cardId').setValue(this.data.rfCardId);\n\t\t\tthis.form.get('field1').setValue(this.data.field1);\n\t\t\tthis.form.get('field2').setValue(this.data.field2);\n\t\t\tthis.form.get('field3').setValue(this.data.field3);\n\t\t\tthis.form.get('field4').setValue(this.data.field4);\n\t\t\tthis.form.get('field5').setValue(this.data.field5);\n\t\t\tthis.form.get('field6').setValue(this.data.field6);\n\t\t\tthis.form.get('field7').setValue(this.data.field7);\n\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tloadSchoolGroupList() {\n\t\tlet na0 = new SchoolGroup();\n\t\tna0.schoolGroupID = 1;\n\t\tna0.name = 'None';\n\t\tthis.schoolGroup.push(na0);\n\t\tlet fp = new SchoolGroupFind();\n\t\tfp.page = 1;\n\t\tfp.pageSize = 100;\n\t\tthis.svc.schoolGroupFindApi(this.acctNumber, fp).subscribe((sg: SchoolGroup[]) => {\n\t\t\tsg.forEach((v => {\n\t\t\t\tthis.schoolGroup.push(v);\n\t\t\t}));\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\t// ignore not found error\n\t\t\tif (!this.svc.isErrNotFound(err)) {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tloadBadgeList(){\n\t\tlet fb = new FindBadge();\n\t\tfb.badgeNumber = -1;\n\t\tthis.svc.badgeFindApi(this.acctNumber, fb).subscribe((b: Badge[])=> {\n\t\t\tb.forEach((v => {\n\t\t\t\tthis.badge.push(v);\n\t\t\t}));\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (!this.svc.isErrNotFound(err)) {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msgHead.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tviewToRequest(r: RfidUsers): RfidUsersRequest {\n\t\tlet ret = new RfidUsersRequest();\n\t\tret.schoolGroupID = parseInt(this.schoolGroupIDValue);\n\t\tret.badgeNumber = parseInt(this.badgeNumberValue);\n\t\tret.uid = r.uid;\n\t\tret.badgeNumber = parseInt(this.badgeNumberValue);\n\t\tret.firstName = trimReturnKey(r.firstName);\n\t\tret.lastName = trimReturnKey(r.lastName);\n\t\tret.middleName = trimReturnKey(r.middleName);\n\t\tret.rfCardId = trimReturnKey(r.rfCardId);\n\t\tret.field1 = trimReturnKey(r.field1);\n\t\tret.field2 = trimReturnKey(r.field2);\n\t\tret.field3 = trimReturnKey(r.field3);\n\t\tret.field4 = trimReturnKey(r.field4);\n\t\tret.field5 = trimReturnKey(r.field5);\n\t\tret.field6 = trimReturnKey(r.field6);\n\t\tret.field7 = trimReturnKey(r.field7);\n\t\treturn ret;\n\t}\n\n\tsave() {\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.schoolGroupIDValue = this.form.get('schoolGroup').value;\n\t\tthis.data.uid = this.form.get('recordIdentifier').value;\n\t\tthis.badgeNumberValue = this.form.get('badgeName').value;\n\t\tthis.data.firstName = this.form.get('firstName').value;\n\t\tthis.data.middleName = this.form.get('middleName').value;\n\t\tthis.data.lastName = this.form.get('lastName').value;\n\t\tthis.data.rfCardId = this.form.get('cardId').value;\n\t\tthis.data.field1 = this.form.get('field1').value;\n\t\tthis.data.field2 = this.form.get('field2').value;\n\t\tthis.data.field3 = this.form.get('field3').value;\n\t\tthis.data.field4 = this.form.get('field4').value;\n\t\tthis.data.field5 = this.form.get('field5').value;\n\t\tthis.data.field6 = this.form.get('field6').value;\n\t\tthis.data.field7 = this.form.get('field7').value;\n\n\t\tif (this.editMode) {\n\t\t\tif(this.data.uid !== \"\"){\n\t\t\t\tthis.svc.rfidUsersUpdateApi(this.acctNumber, this.data.id, this.viewToRequest(this.data))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.svc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.goBack();\n\t\t\t\t\t}, 1000)\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t\t}else{\n\t\t\t\tthis.msg.error(\"Record ID is required!\")\n\t\t\t}\n\t\t} else {\n\t\t\tthis.svc.rfidUsersAddApi(this.acctNumber, this.viewToRequest(this.data))\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.svc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t}\n\t}\n\n\tclearForm() {\n\t\tthis.form.reset({\n\t\t\tfirstName: '',\n\t\t\tlastName: '',\n\t\t\tmiddleName: '',\n\t\t\tbadgeTypeId: '',\n\t\t\tfield1: '',\n\t\t\tfield2: '',\n\t\t\tfield3: '',\n\t\t\tfield4: '',\n\t\t\tfield5: '',\n\t\t\tfield6: '',\n\t\t\tfield7: '',\n\t\t\trecordIdentifier: '',\n\t\t\tschoolGroupID: 1,\n\t\t});\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n}\n","export class RfidUsers {\n\tid: number;\n\tfirstName: string;\n\tlastName: string;\n\tmiddleName: string;\n\tbadgeNumber: number;\n\tbadgeTitle: string;\n\trfCardId: string;\n\tfield1: string;\n\tfield2: string;\n\tfield3: string;\n\tfield4: string;\n\tfield5: string;\n\tfield6: string;\n\tfield7: string;\n\tsource: string;\n\tcreatedAt: Date;\n\tschoolGroupName: string;\n\tschoolGroupID: number;\n\tupdatedAt: Date;\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.middleName = '';\n\t\tthis.badgeNumber = 0;\n\t\tthis.badgeTitle = '';\n\t\tthis.rfCardId = '';\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t\tthis.field3 = '';\n\t\tthis.field4 = '';\n\t\tthis.field5 = '';\n\t\tthis.field6 = '';\n\t\tthis.field7 = '';\n\t\tthis.source = '';\n\t\tthis.schoolGroupID = 0;\n\t\tthis.schoolGroupName = '';\n\t\tthis.createdAt = new Date();\n\t\tthis.updatedAt = new Date();\n\t\tthis.uid = '';\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","/// \nimport { OnInit, Component, ViewChild } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { RfidUsersExport } from './rfid_users_export';\nimport { RfidUsersExportCSVReply } from './rfid_users_export_csv_reply';\nimport { RfidUserListWorkerStatus } from './rfid_users_worker_request';\nimport { RfidUserListWorkerStatusReply } from './rfid_users_worker_status';\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'rfid-users-export',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class RfidUsersExportComponent implements OnInit {\n\thasAccess: boolean;\n\tmsg: Alert;\n\n\tacctNumber: string;\n\tgoBackName: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tsubscriptionQueryParams: Subscription;\n\tsearchQueryParam: string;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: RfidUserListWorkerStatus;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute,\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Export - RFID User List',\n\t\t\tdashboard: 'Export - RFID User List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.searchQueryParam = '';\n\t\tthis.workerstatus = new RfidUserListWorkerStatus();\n\t\tthis.goBackName = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.goBackName = `/settings/${this.acctNumber}/rfid-users-list`;\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'RFID User List', link: `/settings/${this.acctNumber}/rfid-users-list` },\n\t\t\t{ title: 'Export', link: '' }\n\t\t]);\n\t}\n\n\texportFile() {\n\t\tlet tx = new RfidUsersExport();\n\t\ttx.fileVersion = this.fileVersion;\n\t\ttx.textSearch.query = this.searchQueryParam;\n\n\t\tthis.msg.warningHtml('Preparing CSV file, please wait ...');\n\t\tthis.svc.rfidUsersExportCsvApi(this.acctNumber, tx)\n\t\t\t.subscribe(resp => {\n\t\t\t\tthis.workerstatus.requestId = resp.requestId;\n\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\tthis.exportStatus(this.workerstatus, resp);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list`]);\n\t}\n\n\texportStatus(req: RfidUserListWorkerStatus, csvurl: RfidUsersExportCSVReply) {\n\t\ttimer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.rfidUsersExportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: RfidUserListWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while exporting.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.successHtml('Export completed! CSV file is ready, click download.');\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n\tsetNavParams(req: RfidUserListWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/export`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n}\n","import { RfidUsersTextSearch } from './rfid_users_text_search';\nexport class RfidUsersExport {\n\ttextSearch: RfidUsersTextSearch;\n\tseparator: string;\n\trequestId: string;\n\tuseCrlf: boolean;\n\tfileVersion: string;\n\n\tconstructor() {\n\t\tthis.textSearch = new RfidUsersTextSearch();\n\t\tthis.separator = '';\n\t\tthis.useCrlf = true;\n\t\tthis.requestId = '';\n\t\tthis.fileVersion = '';\n\t}\n}\n","export class RfidUsersFind {\n\tid: number;\n\tfirstName: string;\n\tlastName: string;\n\tmiddleName: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.middleName = '';\n\t}\n}\n","\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t","/// \nimport { OnInit, Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from \"../alert\";\nimport { DropdownOption } from '../dropdown_option';\nimport { FileUploader, FileItem } from \"ng2-file-upload\";\nimport { RfidUserListWorkerStatus } from './rfid_users_worker_request';\nimport { RfidUserListWorkerStatusReply } from './rfid_users_worker_status';\nimport { throwError as observableThrowError, Observable, Observer, pipe, timer, Subscription } from 'rxjs';\nimport { filter, map, concatMap, take, tap } from 'rxjs/operators';\n\n@Component({\n\tselector: 'rfid-users-import',\n\ttemplate: `\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

File Version

\n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{{fileTitle | truncate : 100 : '...' : null}}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tGo Back\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t`\n})\n\nexport class RfidUsersImportComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\n\tacctNumber: string;\n\turl: string;\n\tfileVersions: DropdownOption[];\n\tfileVersion: string;\n\tuploader: FileUploader;\n\tfileTitle: string;\n\tuploadDisabled: boolean;\n\trequestId: string;\n\tsequenceId: string;\n\tworkerstatus: RfidUserListWorkerStatus;\n\tprivate subscriptionQueryParams: Subscription;\n\tprivate sub: any;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Import - RFID User List',\n\t\t\tdashboard: 'Import - RFID User List'\n\t\t});\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.workerstatus = new RfidUserListWorkerStatus();\n\t\tthis.workerstatus.requestId = this.requestId;\n\t\tthis.url = '';\n\t\tthis.fileVersions = [\n\t\t\t{ title: 'Web District Manager', id: 'web_district_manager_create' },\n\t\t\t{ title: 'Web District Manager v3.0', id: 'web_district_manager_v3_create' },\n\t\t\t{ title: 'Web School Manager', id: 'web_school_manager_create' },\n\t\t];\n\t\tthis.fileVersion = 'web_district_manager_create';\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.requestId = params['requestId'];\n\t\t\t\tthis.sequenceId = params['sequenceId'];\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.loadUploader();\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this school number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tif (this.requestId != null) {\n\t\t\tthis.workerstatus.requestId = this.requestId;\n\t\t\tthis.workerstatus.lastSequenceId = parseInt(this.sequenceId);\n\t\t\tthis.importStatus(this.workerstatus);\n\t\t}\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'RFID User List', link: `/settings/${this.acctNumber}/rfid-users-list` },\n\t\t\t{ title: 'Import', link: '' }\n\t\t]);\n\t}\n\n\tloadUploader() {\n\t\tthis.url = this.svc.rfidUsersImportCsvUrl(this.acctNumber);\n\t\tlet token = this.svc.getToken();\n\t\tthis.uploader = new FileUploader({ url: this.url, authToken: `${token.tokenType} ${token.accessToken}` });\n\t\tthis.uploader.onAfterAddingFile = (item: FileItem) => {\n\t\t\t//After file is added on queue, enable Upload button and file name\n\t\t\tthis.fileTitle = item.file.name;\n\t\t\tthis.uploadDisabled = false;\n\t\t}\n\t}\n\n\tonChange(event: any) {\n\n\t}\n\n\tonClick() {\n\t\tthis.uploader.clearQueue();\n\t\tthis.disableUpload();\n\t}\n\n\tupload() {\n\t\tvar fileVer = this.fileVersion;\n\t\t// send other params with file\n\t\tthis.uploader.onBuildItemForm = function (fileItem, form) {\n\t\t\tform.append('fileVersion', fileVer);\n\t\t\treturn { fileItem, form }\n\t\t};\n\t\tif (this.uploader.queue.length > 0) {\n\t\t\tthis.msg.warning('Please wait while uploading file ...');\n\t\t\tthis.uploader.onCompleteItem = (i: any, resp: string, code: number) => {\n\t\t\t\tif (code == 0) {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(new Error()));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (code != 200) {\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tlet err = new Error()\n\t\t\t\t\tif (respJson.error) {\n\t\t\t\t\t\terr.message = respJson.error;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\t// get the status after successfully uploaded, from here it means it did upload successfully, now get the status of import\n\t\t\t\t\t// start in 50 milliseconds and loop every 2sec\n\t\t\t\t\tlet respJson = JSON.parse(resp);\n\t\t\t\t\tvar reqId = respJson.requestId;\n\t\t\t\t\tthis.workerstatus.requestId = reqId;\n\t\t\t\t\tthis.setNavParams(this.workerstatus);\n\t\t\t\t\tthis.importStatus(this.workerstatus);\n\t\t\t\t\tthis.disableUpload();\n\t\t\t\t\tthis.clearSelectedFile();\n\t\t\t\t}\n\t\t\t};\n\t\t\tlet fi = this.uploader.queue[0];\n\t\t\tfi.upload();\n\t\t} else {\n\t\t\tthis.msg.error('File not selected.');\n\t\t}\n\t}\n\n\t@ViewChild('selectedFile') selectedFile: any;\n\tclearSelectedFile() {\n\t\tthis.selectedFile.nativeElement.value = '';\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list`]);\n\t}\n\n\tdisableUpload() {\n\t\tthis.fileTitle = 'Choose File';\n\t\tthis.uploadDisabled = true;\n\t}\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t\tif(this.sub){\n\t\t\tthis.sub.complete();\n\t\t}\n\t}\n\tsetNavParams(req: RfidUserListWorkerStatus): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['requestId'] = req.requestId;\n\t\tparams['sequenceId'] = req.lastSequenceId;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/import`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\timportStatus(req: RfidUserListWorkerStatus) {\n\t\tthis.sub = timer(50, 2000)\n\t\t\t.pipe(\n\t\t\t\tconcatMap(() => {\n\t\t\t\t\treturn this.svc.rfidUsersImportCsvStatus(this.acctNumber, req)\n\t\t\t\t\t\t.pipe(\n\t\t\t\t\t\t\tmap((ws: RfidUserListWorkerStatusReply) => {\n\t\t\t\t\t\t\t\tconsole.log(ws);\n\t\t\t\t\t\t\t\tif (ws.error !== \"\") {\n\t\t\t\t\t\t\t\t\tthrow new Error(ws.error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn ws;\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\ttap(ws => {\n\t\t\t\t\t\t\t\tif (!ws.done) {\n\t\t\t\t\t\t\t\t\treq.lastSequenceId = ws.lastSequenceId;\n\t\t\t\t\t\t\t\t\tthis.setNavParams(req);\n\t\t\t\t\t\t\t\t\tthis.msg.info(`Please wait while importing. Imported ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\tfilter(d => {\n\t\t\t\t\treturn d.done;\n\t\t\t\t}),\n\t\t\t\ttake(1)\n\t\t\t)\n\t\t\t.subscribe(ws => {\n\t\t\t\tthis.msg.success(`Import completed with ${ws.importedRows} out of ${ws.totalFileRows}.`);\n\t\t\t}, err => {\n\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(this.svc.getError(err)));\n\t\t\t});\n\t}\n}\n","\n
\n
\n \n
\n
\n
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\n \n\t\t\t\t\t Go Back\n
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tdelete all |\n\t\t\t\t\t\timport |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t \t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n \n \n \n
NameBadge NameCard IDFieldsSchool GroupChanged AtRecord IDActions
{{row.name}}{{row.badgeTitle}}{{row.rfCardId}}{{row.fields}}{{row.schoolGroupName}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}{{row.uid}}\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t |\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n \n
\n\t\t
","/// \nimport { OnInit, OnDestroy, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle, Breadcrumb } from '../title';\nimport { DistrictService } from '../district.service';\nimport { AlertDirective } from '../alert.directive';\nimport { Alert } from '../alert';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { Account, validateToken } from '../account.service';\nimport { OffClickDirective } from \"../off_click.directive\";\nimport { User } from '../user';\nimport { Subscription } from 'rxjs';\n\nimport { RfidUsers } from './rfid_users';\nimport { RfidUsersTextSearch } from './rfid_users_text_search';\nimport { RfidUsersView } from \"./rfid_users_view\";\nimport { Observable } from 'rxjs/Observable';\nimport { Observer } from 'rxjs/Observer';\nimport 'rxjs/add/operator/map';\nimport 'rxjs/add/operator/catch';\n\n\n@Component({\n\tselector: 'rfid-users-list',\n\ttemplate: `\n
\n
\n \n
\n
\n
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\n \n\t\t\t\t\t Go Back\n
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tdelete all |\n\t\t\t\t\t\timport |\n\t\t\t\t\t\texport\n\t\t\t\t\t

\n
\n
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n\t\t
\n
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t
\n
\n
\n
\n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t \t \n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t \n \n \n \n \n \n \n \n \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n \n \n \n
NameBadge NameCard IDFieldsSchool GroupChanged AtRecord IDActions
{{row.name}}{{row.badgeTitle}}{{row.rfCardId}}{{row.fields}}{{row.schoolGroupName}}{{row.changedAt | date:\"MM/dd/yyyy, hh:mm a\"}}{{row.uid}}\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\t |\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n
\n
\n
\n
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n \n
\n\t\t
`,\n\t\t preserveWhitespaces:true,\n})\n\nexport class RfidUsersListComponent implements OnInit, OnDestroy {\n\thasAccess: boolean;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmsgYesNo: Alert;\n\n\tfobj: RfidUsersTextSearch;\n\tdata: RfidUsersView[];\n\n\tacctNumber: string;\n\tpageSizeParam: string;\n\tpageParam: string;\n\tmaxPageSize: number;\n\tfromPage: number;\n\ttoPage: number;\n\trowCount: number;\n\tdisablePreviousPage: boolean;\n\tdisableNextPage: boolean;\n\tsearchQueryParam: string;\n\tdisableLastPage:boolean;\n\tlastPage: number;\n\n\tuser: User;\n\tprivate subscriptionQueryParams: Subscription;\n\n\tconstructor(\n\t\tprivate account: Account,\n\t\tprivate router: Router,\n\t\tprivate svc: DistrictService,\n\t\tfb: FormBuilder,\n\t\tprivate title: AppTitle,\n\t\tprivate activatedRoute: ActivatedRoute\n\t) {\n\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.msgYesNo = new Alert();\n\n\t\tthis.fobj = new RfidUsersTextSearch()\n\t\tthis.fobj.pageSize = this.maxPageSize;\n\t\tthis.data = [];\n\n\t\tthis.maxPageSize = 20;\n\t\tthis.fromPage = 0;\n\t\tthis.toPage = 0;\n\t\tthis.rowCount = 0;\n\t\tthis.lastPage = 0;\n\t\tthis.disableLastPage = true;\n\t\tthis.disablePreviousPage = true;\n\t\tthis.disableNextPage = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.searchQueryParam = params['searchQuery'];\n\t\t\t\tthis.pageSizeParam = params['pageSize']\n\t\t\t\tthis.pageParam = params['page']\n\t\t\t\tthis.setFormNavParams(this.fobj);\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'RFID User List',\n\t\t\tdashboard: 'RFID User List',\n\t\t});\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(`You don't have access to this district number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'RFID User List', link: '' },\n\t\t]);\n\t}\n\n\trfidUsersToView(r: RfidUsers): RfidUsersView {\n\t\tlet e = new RfidUsersView();\n\t\te.id = r.id;\n\t\te.name = `${r.lastName}, ${r.firstName} ${r.middleName}`;\n\t\te.badgeTitle = r.badgeTitle;\n\t\tlet fls = this.fieldsToArray(r);\n\t\te.fields = this.fieldsToString(fls);\n\t\te.rfCardId = r.rfCardId;\n\t\te.schoolGroupName = r.schoolGroupName;\n\t\tif (r.schoolGroupName === \"\"){\n\t\t\te.schoolGroupName = \"None\"\n\t\t}\n\t\te.uid = r.uid;\n\t\te.changedAt = (typeof r.updatedAt === 'string') ? r.createdAt : r.updatedAt;\n\n\t\treturn e;\n\t}\n\n\tngOnDestroy() {\n\t\tthis.subscriptionQueryParams.unsubscribe();\n\t}\n\n\trefresh() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tthis.msg.close();\n\t\tthis.msgHead.close();\n\t\tthis.msgYesNo.close();\n\t\tthis.fobj.page = 1; //start from page 1, this prevents the page number not equal to this new results\n\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t});\n\t}\n\n\tremove(row: RfidUsersView) {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tthis.msgYesNo.close();\n\t\tthis.svc.rfidUsersRemoveApi(this.acctNumber, row.id)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.msg.success('Successfully removed selected record.');\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\tedit(row: RfidUsersView) {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/${row.id}/edit`]);\n\t}\n\n\taddNew() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/add`]);\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}`]);\n\t}\n\n\tloadData() {\n\t\tthis.data = [];\n\n\t\tthis.svc.rfidUsersSearchApi(this.acctNumber, this.fobj).subscribe((rows: RfidUsers[]) => {\n\t\t\tfor (let e of rows) {\n\t\t\t\tthis.data.push(this.rfidUsersToView(e));\n\t\t\t}\n\t\t\tthis.rowCount = rows.length;\n\t\t\tthis.disablePreviousPage = this.fobj.page == 1;\n\t\t\tthis.maxPageSize = this.fobj.pageSize;\n\t\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t\tthis.toPage = (this.maxPageSize * (this.fobj.page));\n\t\t\t} else {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.fobj.page - 1)) + 1;\n\t\t\t}\n\n\t\t\tthis.svc.rfidUsersSearchCountApi(this.acctNumber, this.fobj).subscribe(resp => {\n\t\t\t\tlet count = resp.count;\n\t\t\t\tthis.rowCount = count;\n\t\t\t\tif (this.data.length < this.maxPageSize) {\n\t\t\t\t\tthis.toPage = count;\n\t\t\t\t}\n\t\t\t\tthis.disableNextPage = this.getToPage() >= count;\n\t\t\t\tthis.lastPage = Math.ceil(count/this.maxPageSize);\n\t\t\t\tthis.disableLastPage = this.getToPage() >= count;\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.svc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.svc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.svc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.svc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tgetFromPage(): number {\n\t\treturn this.fromPage;\n\t}\n\n\tgetToPage(): number {\n\t\treturn this.toPage;\n\t}\n\n\tprevPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page -= 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tfirstPage() {\n\t\tif (this.fobj.page > 1) {\n\t\t\tthis.fobj.page = 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tnextPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.fobj.page + 1;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\ttoLastPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.fobj.page = this.lastPage;\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tsetNavParams(req: RfidUsersTextSearch): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['searchQuery'] = req.query;\n\t\tparams['page'] = req.page;\n\t\tparams['pageSize'] = req.pageSize;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/rfid-users-list`], { queryParams: this.svc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\n\tsetFormNavParams(f: RfidUsersTextSearch) {\n\t\tlet dec = decodeURIComponent;\n\n\t\tf.query = this.searchQueryParam != null ? dec(this.searchQueryParam) : '';\n\t\tf.pageSize = this.pageSizeParam != null ? parseInt(dec(this.pageSizeParam)) : 20;\n\t\tf.page = this.pageParam != null ? parseInt(dec(this.pageParam)) : 1;\n\t}\n\n\tdeleteAllConfirmation() {\n\t\tthis.msg.close();\n\t\tthis.msgYesNo.warningHtml(`Are you sure to remove all results from current search?`);\n\t}\n\n\tdeleteAll() {\n\t\tthis.msg.info('Removing results from current search ...');\n\t\tthis.svc.rfidUsersRemoveAllApi(this.acctNumber, this.fobj)\n\t\t\t.subscribe(res => {\n\t\t\t\tthis.data = [];\n\t\t\t\tthis.msg.success('Successfully removed all results from current search.');\n\t\t\t\tif (this.fobj.query != '') {\n\t\t\t\t\tthis.fobj.query = '';\n\t\t\t\t\tthis.refresh();\n\t\t\t\t}\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\tthis.msg.error(e);\n\t\t\t});\n\t}\n\n\timportNav() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/import`]);\n\t}\n\n\texportNav() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/export`], { queryParams: { searchQuery: this.searchQueryParam } });\n\t}\n\n\tmsgYesNoRespond(respond: any) {\n\t\tif (respond == 'yes') {\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => {\n\t\t\t\tthis.msgYesNo.close();\n\t\t\t\tthis.deleteAll();\n\t\t\t});\n\t\t} else if (respond == 'no') {\n\t\t\tthis.msgYesNo.close();\n\t\t\tthis.setNavParams(this.fobj).subscribe(() => { });\n\t\t}\n\t}\n\n\tfieldsToArray(c: RfidUsers): string[] {\n\t\tlet i: string[] = [];\n\t\tif (c.field1 != '') {\n\t\t\ti.push(c.field1);\n\t\t}\n\t\tif (c.field2 != '') {\n\t\t\ti.push(c.field2);\n\t\t}\n\t\tif (c.field3 != '') {\n\t\t\ti.push(c.field3);\n\t\t}\n\t\tif (c.field4 != '') {\n\t\t\ti.push(c.field4);\n\t\t}\n\t\tif (c.field5 != '') {\n\t\t\ti.push(c.field5);\n\t\t}\n\t\tif (c.field6 != '') {\n\t\t\ti.push(c.field6);\n\t\t}\n\t\tif (c.field7 != '') {\n\t\t\ti.push(c.field7);\n\t\t}\n\t\treturn i;\n\t}\n\n\tfieldsToString(s: string[]): string {\n\t\tlet str = '';\n\t\tlet n = 0;\n\t\tfor (let i = 0; i < s.length; i++) {\n\t\t\tn = i + 1;\n\t\t\tstr += n + ': ' + s[i];\n\t\t\tif (i < s.length - 1) {\n\t\t\t\tstr += ', ';\n\t\t\t}\n\t\t}\n\t\treturn str;\n\t}\n\tbadges() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/rfid-users-list/badge-list`]);\n\t}\n}\n","export class RfidUsersRequest {\n\tid: number;\n\tfirstName: string;\n\tlastName: string;\n\tmiddleName: string;\n\tbadgeNumber: number;\n\trfCardId: string;\n\tfield1: string;\n\tfield2: string;\n\tfield3: string;\n\tfield4: string;\n\tfield5: string;\n\tfield6: string;\n\tfield7: string;\n\tschoolGroupID: number;\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.firstName = '';\n\t\tthis.lastName = '';\n\t\tthis.middleName = '';\n\t\tthis.badgeNumber = 0;\n\t\tthis.rfCardId = '';\n\t\tthis.field1 = '';\n\t\tthis.field2 = '';\n\t\tthis.field3 = '';\n\t\tthis.field4 = '';\n\t\tthis.field5 = '';\n\t\tthis.field6 = '';\n\t\tthis.field7 = '';\n\t\tthis.schoolGroupID = 0;\n\t\tthis.uid = '';\n\t}\n}\n","export class RfidUsersTextSearch {\n\tquery: string;\n\tdateFormat: string;\n\tpage: number;\n\tpageSize: number;\n\n\tconstructor() {\n\t\tthis.query = '';\n\t\tthis.dateFormat = '';\n\t\tthis.page = 0;\n\t\tthis.pageSize = 0;\n\t}\n}\n","export class RfidUsersView {\n\tid: number;\n\tname: string;\n\tbadgeTitle: string;\n\trfCardId: string;\n\tfields: string;\n\tchangedAt: Date;\n\treadOnly: boolean;\n\tschoolGroupName: string;\n\tuid: string;\n\n\tconstructor() {\n\t\tthis.id = 0;\n\t\tthis.name = '';\n\t\tthis.badgeTitle = '';\n\t\tthis.rfCardId = '';\n\t\tthis.fields = '';\n\t\tthis.changedAt = new Date();\n\t\tthis.readOnly = false;\n\t\tthis.schoolGroupName = '';\n\t\tthis.uid = '';\n\t}\n}\n","export class RfidUserListWorkerStatus {\n\trequestId: string;\n\tlastSequenceId: number;\n\n\tconstructor() {\n\t\tthis.requestId = '';\n\t\tthis.lastSequenceId = 0;\n\t}\n}\n","\n\nexport class RootSchoolGroupAccountV2 {\n\tdistrictAcctNumber: number;\n\tacctNumber: number;\n\torganizationName: string;\n\tschoolGroupID: number;\n\tschoolGroupName: string;\n\tcreatedAt: Date;\n\tupdatedAt: Date;\n\tconstructor() {\n\t\tthis.districtAcctNumber = 0;\n\t\tthis.acctNumber = 0;\n\t\tthis.organizationName = '';\n\t\tthis.schoolGroupID = 0;\n\t\tthis.schoolGroupName = '';\n\t\tthis.createdAt = new Date();\n\t\tthis.updatedAt = new Date();\n\t}\n}\n","\n
\n\t
\n\t\t \n\t
\n
\n
\n\t\t
\n
\n
\n
\n
\n

SchoolGroup Name

\n \n
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
Organization NameSelect All
{{row.organizationName}}
\n\t\t\t\t\t
\n\t\t\t\t
\n\n
\n
\n
\n\t
\n\t\t \n\t\t Go Back\n\t
\n
\n
\n\t
\n\t\t \n\t
\n
\n","/// \nimport { OnInit, Component } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from '../alert';\nimport { Account, validateToken } from '../account.service';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators, FormArray } from '@angular/forms';\nimport { SchoolGroup } from './school_group';\nimport { AssociateAccount } from './account_association';\nimport { SchoolGroupFind } from './find_school_group';\nimport { SchoolGroupAccountOrg } from './school_group_account_org';\nimport { mergeMap } from 'rxjs/operators';\nimport { Observable } from 'rxjs';\nimport { RootSchoolGroupAccountV2 } from './school_group v2';\n\n@Component({\n\tselector: 'school-group',\n\tstyles: [`\n\t.tag {\n\t\t margin-right:2px;\n\t\t background-color:#9dbd9e;\n\t\t border-radius:4px;\n\t\t padding:5px;\n\t}\n .tag-close {\n\t margin-left:5px;\n\t\t cursor: pointer;\n }\n`],\n\ttemplate: `\n
\n\t
\n\t\t \n\t
\n
\n
\n\t\t
\n
\n
\n
\n
\n

SchoolGroup Name

\n \n
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
Organization NameSelect All
{{row.organizationName}}
\n\t\t\t\t\t
\n\t\t\t\t
\n\n
\n
\n
\n\t
\n\t\t \n\t\t Go Back\n\t
\n
\n
\n\t
\n\t\t \n\t
\n
\n`,\npreserveWhitespaces:true,\n})\nexport class SchoolGroupComponent implements OnInit {\n\tdata: RootSchoolGroupAccountV2[];\n\tsgname: string;\n\taccounts: AssociateAccount[];\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmaxPageSize: number;\n\tcurrentRow: RootSchoolGroupAccountV2;\n\tacctNumber: string;\n\tform: FormGroup;\n\thasAccess: boolean;\n\tidParam: string;\n\teditMode: boolean;\n\tsaveCount: number;\n\tisChecked: boolean;\n\tcheckIndeterminate: boolean;\n\n\tconstructor(private router: Router, private dvc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.maxPageSize = 1000;\n\t\tthis.data = [];\n\t\tthis.accounts = [];\n\t\tthis.currentRow = new RootSchoolGroupAccountV2();\n\t\tthis.form = fb.group({\n\t\t\tschoolgroupname: ['', Validators.compose([Validators.required, Validators.maxLength(25)])],\n\t\t});\n\t\tthis.editMode = false;\n\t\tthis.saveCount = 1;\n\t\tthis.sgname = '';\n\t}\n\n\tngOnInit() {\n\t\tlet titleStr = 'Add New';\n\t\tlet action = 'add';\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Add New - School Group',\n\t\t\tdashboard: 'Add New - School Group',\n\t\t});\n\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tthis.idParam = this.activatedRoute.snapshot.params['id'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(\"You don't have access to this district number \" + this.acctNumber);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.loadAccData()\n\t\t\t.subscribe(() => {\n\t\t\t}, err => {\n\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\tif (this.idParam) {\n\t\t\tthis.editMode = true;\n\t\t\tconsole.log(this.data);\n\t\t\tthis.title.setTitles({\n\t\t\t\ttitle: 'Edit - School Group',\n\t\t\t\tdashboard: 'Edit - School Group',\n\t\t\t});\n\t\t\ttitleStr = 'Edit';\n\t\t\taction = 'edit';\n\n\t\t}\n\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'School Group', link: `/settings/${this.acctNumber}/school-group` },\n\t\t\t{ title: titleStr, link: '' },\n\t\t]);\n\t}\n\n\n\tview() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.loadAccData();\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\tleftPad(val: string, size: number, ch: string): string {\n\t\tvar result = String(val);\n\t\tif (!ch) {\n\t\t\tch = \" \";\n\t\t}\n\t\twhile (result.length < size) {\n\t\t\tresult = ch + result;\n\t\t}\n\t\treturn result;\n\t}\n\n\thexAcctNumber(num: number): string {\n\t\t//sign >>> is Zero-fill right shift\n\t\treturn this.leftPad((num >>> 0).toString(16), 8, '0').toUpperCase();\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/school-group`]);\n\t}\n\n\tselectAll() {\n\t\tfor (var d in this.accounts) {\n\t\t\tif (this.isChecked) {\n\t\t\t\tthis.accounts[d].enabled = true;\n\t\t\t} else {\n\t\t\t\tthis.accounts[d].enabled = false;\n\t\t\t}\n\t\t}\n\t\tthis.checkindeterminate();\n\t}\n\n\tsave() {\n\t\tlet req = new SchoolGroup\n\t\treq.districtAcctNumber = Number(this.hexToInt(this.acctNumber));\n\t\treq.name = this.form.get('schoolgroupname').value;\n\n\n\t\tfor (let i = 0; i < this.accounts.length; i++) {\n\t\t\tif (this.accounts[i].enabled) {\n\t\t\t\tlet schoolgroupaccountorg = {} as SchoolGroupAccountOrg;\n\t\t\t\tschoolgroupaccountorg.acctNumber = Number(this.accounts[i].acctNumber);\n\t\t\t\treq.accounts.push(schoolgroupaccountorg);\n\t\t\t}\n\t\t}\n\n\t\tif (this.editMode) {\n\t\t\treq.schoolGroupID = this.data[0].schoolGroupID;\n\t\t\tthis.dvc.schoolGroupUpdateApi(this.acctNumber, req)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tlet saveMessage = this.dvc.getDefaultSaveMessage();\n\t\t\t\t\tif (this.saveCount > 1) {\n\t\t\t\t\t\tsaveMessage += ` (${this.saveCount})`\n\t\t\t\t\t}\n\t\t\t\t\tthis.saveCount++;\n\t\t\t\t\tthis.msg.success(saveMessage);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.goBack();\n\t\t\t\t\t}, 1000)\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t});\n\t\t} else {\n\n\t\t\tthis.dvc.schoolGroupAddApi(this.acctNumber, req).subscribe(resp => {\n\t\t\t\tthis.msg.success('Successfully Saved ');\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.goBack();\n\t\t\t\t}, 1000)\n\t\t\t},\n\t\t\t\terr => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t});\n\n\t\t}\n\t}\n\n\thexToInt(hex) {\n\t\tif (hex.length % 2 != 0) {\n\t\t\thex = \"0\" + hex;\n\t\t}\n\t\tvar num = parseInt(hex, 16);\n\t\tvar maxVal = Math.pow(2, hex.length / 2 * 8);\n\t\tif (num > maxVal / 2 - 1) {\n\t\t\tnum = num - maxVal\n\t\t}\n\t\treturn num;\n\t}\n\n\treadOnly() {\n\t\tif (this.sgname.toLowerCase() === 'all') {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\tloadAccData(): Observable {\n\t\treturn Observable.of(null)\n\t\t\t.mergeMap(() => {\n\t\t\t\treturn this.dvc.accountAssociationFindApi(this.acctNumber).map((accs: AssociateAccount[]) => {\n\t\t\t\t\tfor (let i = 0; i < accs.length; i++) {\n\t\t\t\t\t\tif (accs[i].enabled) {\n\t\t\t\t\t\t\taccs[i].enabled = false;\n\t\t\t\t\t\t\tthis.accounts.push(accs[i]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t\t\t.mergeMap(() => {\n\t\t\t\tif (this.idParam) {\n\t\t\t\t\tlet find = new SchoolGroupFind();\n\t\t\t\t\tfind.schoolGroupID = parseInt(this.idParam);\n\t\t\t\t\tfind.pageSize = this.maxPageSize;\n\t\t\t\t\treturn this.dvc.schoolGroupFindAccountsV2Api(this.acctNumber, find).map((rows: RootSchoolGroupAccountV2[]) => {\n\t\t\t\t\t\tthis.data = rows;\n\t\t\t\t\t\tthis.sgname = rows[0].schoolGroupName;\n\t\t\t\t\t\tthis.form.get('schoolgroupname').setValue(this.sgname);\n\t\t\t\t\t\tfor (let i = 0; i < this.accounts.length; i++) {\n\t\t\t\t\t\t\tthis.accounts[i].enabled = false;\n\t\t\t\t\t\t\tfor (let j = 0; j < this.data.length; j++) {\n\t\t\t\t\t\t\t\tif (Number(this.accounts[i].acctNumber) == Number(this.data[j].acctNumber)) {\n\t\t\t\t\t\t\t\t\tthis.accounts[i].enabled = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.checkindeterminate();\n\n\t\t\t\t\t}, err => {\n\t\t\t\t\t\tconsole.log(err);\n\t\t\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn Observable.of(null)\n\t\t\t})\n\t\treturn Observable.of(null)\n\t}\n\n\tcheckindeterminate(){\n\t\tif (this.accounts.every(this.checkAllFalsedata)){\n\t\t\tthis.isChecked = false\n\t\t\tthis.checkIndeterminate = false\n\t\t}\n\t\telse if(this.accounts.every(this.checkAllTruedata)){\n\t\t\tthis.checkIndeterminate = false\n\t\t\tthis.isChecked = true\n\t\t} else{\n\t\t\tthis.isChecked = false\n\t\t\tthis.checkIndeterminate = true\n\t\t}\n\t}\n\n\tcheckAllTruedata(accounts, index, array) {\n\t\treturn (accounts.enabled == true);\n\t}\n\tcheckAllFalsedata(accounts, index, array) {\n\t\treturn (accounts.enabled == false);\n\t}\n}\n","import { SchoolGroupAccountOrg } from './school_group_account_org';\n\nexport class SchoolGroup {\n\taccounts: SchoolGroupAccountOrg[];\n\tdistrictAcctNumber: number;\n\tschoolGroupID: number;\n\tname: string;\n\tcreatedAt: Date;\n\tupdatedAt: Date;\n\tconstructor() {\n\t\tthis.accounts = [];\n\t\tthis.districtAcctNumber = 0;\n\t\tthis.schoolGroupID = 0;\n\t\tthis.name = '';\n\t\tthis.createdAt = new Date();\n\t\tthis.updatedAt = new Date();\n\t}\n}\n","export class SchoolGroupAccountOrg {\n\tacctNumber: number;\n\torganizationName: string;\n\tconstructor() {\n\t\tthis.acctNumber = 0;\n\t\tthis.organizationName = '';\n\t}\n}\n","\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\n\t
\n\t
\n\t \n\t \n\t Go Back\n
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
School GroupChanged AtActions
{{row.name}}{{row.updatedAt | date:\"MM/dd/y HH:mm\"}}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tView\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n \t\t\t\t\t\t\t\t\t\t | \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n
\n
\n\t","/// \nimport { OnInit, Component } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { DistrictService } from '../district.service';\nimport { Alert } from '../alert';\nimport { Account, validateToken } from '../account.service';\nimport { AppValidators, controlErrors } from '../app.validators';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { SchoolGroup } from './school_group';\nimport { SchoolGroupFind } from './find_school_group';\nimport { SchoolGroupReturn } from './school_group_return';\nimport { Observable } from 'rxjs/Observable';\nimport { Observer } from 'rxjs/Observer';\nimport { Subscription } from 'rxjs';\n\n@Component({\n\tselector: 'school-group',\n\tstyles: [`\n\t.tag {\n\t\t margin-right:2px;\n\t\t background-color:#9dbd9e;\n\t\t border-radius:4px;\n\t\t padding:5px;\n\t}\n .tag-close {\n\t margin-left:5px;\n\t\t cursor: pointer;\n }\n`],\n\ttemplate: `\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\n\t
\n\t
\n\t \n\t \n\t Go Back\n
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
School GroupChanged AtActions
{{row.name}}{{row.updatedAt | date:\"MM/dd/y HH:mm\"}}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tView\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n \t\t\t\t\t\t\t\t\t\t | \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t
0\" style=\"\">\n
\n \n \n {{getFromPage()}}-{{getToPage()}} of {{rowCount}}\n \n
\n
\n\t`,\n\tpreserveWhitespaces:true,\n})\nexport class SchoolGroupListComponent implements OnInit {\n\tdata: SchoolGroup[];\n\tfindData: SchoolGroupFind;\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tmaxPageSize: number;\n\tcurrentRow: SchoolGroup;\n\tacctNumber: string;\n\tform: FormGroup;\n\thasAccess: boolean;\n\trowCount: number;\n\tdisableNextPage: boolean;\n\tdisablePreviousPage: boolean;\n\tfromPage: number;\n\ttoPage: number;\n\tpageSizeParam: string;\n\tpageParam: string;\n\tprivate subscriptionQueryParams: Subscription;\n\n\tconstructor(private account: Account, private router: Router, private dvc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\ttitle.setTitles({\n\t\t\ttitle: 'School Group',\n\t\t\tdashboard: 'School Group'\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'School Group', link: `` }\n\t\t]);\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\tthis.maxPageSize = 20;\n\t\tthis.data = [];\n\t\tthis.currentRow = new SchoolGroup();\n\t\tthis.findData = new SchoolGroupFind;\n\t\tthis.rowCount = 0;\n\t\tthis.disablePreviousPage = true;\n\t\tthis.fromPage = 0;\n\t\tthis.toPage = 0;\n\t\tthis.disableNextPage = true;\n\t\tthis.subscriptionQueryParams = activatedRoute.queryParams.subscribe(\n\t\t\t(params) => {\n\t\t\t\tthis.pageSizeParam = params['pageSize']\n\t\t\t\tthis.pageParam = params['page']\n\t\t\t\tthis.setFormNavParams(this.findData);\n\t\t\t}\n\t\t);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(\"You don't have access to this district number \" + this.acctNumber);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.loadData();\n\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: `/settings/${this.acctNumber}` },\n\t\t\t{ title: 'School Group', link: `` },\n\t\t]);\n\t}\n\n\tview() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.loadData();\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\tleftPad(val: string, size: number, ch: string): string {\n\t\tvar result = String(val);\n\t\tif (!ch) {\n\t\t\tch = \" \";\n\t\t}\n\t\twhile (result.length < size) {\n\t\t\tresult = ch + result;\n\t\t}\n\t\treturn result;\n\t}\n\n\thexAcctNumber(num: number): string {\n\t\t//sign >>> is Zero-fill right shift\n\t\treturn this.leftPad((num >>> 0).toString(16), 8, '0').toUpperCase();\n\t}\n\n\tloadData() {\n\t\tthis.data = [];\n\t\tthis.findData.pageSize = this.maxPageSize;\n\t\tthis.dvc.schoolGroupFindApi(this.acctNumber, this.findData).subscribe((sg: SchoolGroup[]) => {\n\t\t\tthis.data = sg;\n\t\t\tthis.rowCount = sg.length;\n\t\t\tthis.disablePreviousPage = this.findData.page == 1;\n\t\t\tthis.maxPageSize = this.findData.pageSize;\n\t\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.findData.page - 1)) + 1;\n\t\t\t\tthis.toPage = (this.maxPageSize * (this.findData.page));\n\t\t\t} else {\n\t\t\t\tthis.fromPage = (this.maxPageSize * (this.findData.page - 1)) + 1;\n\t\t\t}\n\n\t\t\tthis.dvc.schoolGroupFindCountApi(this.acctNumber, this.findData).subscribe(resp => {\n\t\t\t\tlet count = resp.count;\n\t\t\t\tthis.rowCount = count;\n\t\t\t\tif (this.data.length < this.maxPageSize) {\n\t\t\t\t\tthis.toPage = count;\n\t\t\t\t}\n\t\t\t\tthis.disableNextPage = this.getToPage() >= count;\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\n\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tgoBack() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}`]);\n\t}\n\n\tedit(row: SchoolGroup) {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/school-group/${row.schoolGroupID}/edit`]);\n\t}\n\n\taddNew() {\n\t\tthis.router.navigate([`/settings/${this.acctNumber}/school-group/add`]);\n\t}\n\n\tremove(row: SchoolGroup) {\n\t\tthis.dvc.schoolGroupRemoveApi(this.acctNumber, row).subscribe(() => {\n\t\t\tthis.refresh();\n\t\t\tthis.msg.success('Successfully removed selected record.');\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\trefresh() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tthis.msg.close();\n\t\tthis.msgHead.close();\n\t\tthis.findData.page = 1; //start from page 1, this prevents the page number not equal to this new results\n\t\tthis.loadData()\n\t}\n\n\tgetFromPage(): number {\n\t\treturn this.fromPage;\n\t}\n\n\tgetToPage(): number {\n\t\treturn this.toPage;\n\t}\n\n\tprevPage() {\n\t\tif (this.findData.page > 1) {\n\t\t\tthis.findData.page -= 1;\n\t\t\tthis.setNavParams(this.findData).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tfirstPage() {\n\t\tif (this.findData.page > 1) {\n\t\t\tthis.findData.page = 1;\n\t\t\tthis.setNavParams(this.findData).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tnextPage() {\n\t\tif (this.data.length >= this.maxPageSize) {\n\t\t\tthis.findData.page = this.findData.page + 1;\n\t\t\tthis.setNavParams(this.findData).subscribe(() => {\n\t\t\t\tthis.loadData()\n\t\t\t});\n\t\t}\n\t}\n\n\tsetNavParams(req: SchoolGroupFind): Observable {\n\t\tvar params: any = {};\n\n\t\tparams['page'] = req.page;\n\t\tparams['pageSize'] = req.pageSize;\n\n\t\tlet p = this.router.navigate([`/settings/${this.acctNumber}/school-group`], { queryParams: this.dvc.params(params) });\n\n\t\treturn Observable.create((observer: Observer) => {\n\t\t\tp.then(() => {\n\t\t\t\tobserver.next(true);\n\t\t\t\tobserver.complete();\n\t\t\t});\n\t\t});\n\t}\n\n\tsetFormNavParams(f: SchoolGroupFind) {\n\t\tlet dec = decodeURIComponent;\n\n\t\tf.pageSize = this.pageSizeParam != null ? parseInt(dec(this.pageSizeParam)) : 20;\n\t\tf.page = this.pageParam != null ? parseInt(dec(this.pageParam)) : 1;\n\t}\n\n\treadOnly(row: SchoolGroup) {\n\t\tif (row.name.toLowerCase() === 'all') {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n}\n","\n
\n \n

Association

\n\t\t\t\t
.
\n
    \n
  • Associate School\n

    Activate schools to include in district reporting.

    \n\t\t\t\t\t
  • \n\t\t\t\t\t
  • School Group\n\t\t\t\t\t

    Create custom School Groups.

    \n\t\t\t\t
  • \n\t\t\t\t
\n\t\t\t\t

Manage Preloaded Lists

\n\t\t\t\t
.
\n\t\t\t\t
    \n\t\t\t\t
  • NoGo Enhanced List\n\t\t\t\t\t

    Manage your district wide nogo list

    \n\t\t\t\t
  • \n\t\t\t\t
  • RFID Users List\n\t\t\t\t\t

    Manage RFID Users List

    \n\t\t\t\t
  • \n\t\t\t\t
  • Preloaded List\n\t\t\t\t

    Define and manage custom preloaded lists

    \n\t\t \t\t
  • \n\t\t
\n
\n ","/// \nimport { OnInit, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from '../title';\nimport { Alert } from '../alert';\nimport { Account, validateToken } from '../account.service';\nimport { DistrictService } from '../district.service';\nimport { User } from '../user';\n\n@Component({\n\tselector: 'settings',\n\tstyles: [`\n .report-links p { font-style: italic; font-size:13px; }\n .report-links { margin:0; padding:0; list-style: none; }\n `],\n\ttemplate: `\n
\n \n

Association

\n\t\t\t\t
.
\n
    \n
  • Associate School\n

    Activate schools to include in district reporting.

    \n\t\t\t\t\t
  • \n\t\t\t\t\t
  • School Group\n\t\t\t\t\t

    Create custom School Groups.

    \n\t\t\t\t
  • \n\t\t\t\t
\n\t\t\t\t

Manage Preloaded Lists

\n\t\t\t\t
.
\n\t\t\t\t
    \n\t\t\t\t
  • NoGo Enhanced List\n\t\t\t\t\t

    Manage your district wide nogo list

    \n\t\t\t\t
  • \n\t\t\t\t
  • RFID Users List\n\t\t\t\t\t

    Manage RFID Users List

    \n\t\t\t\t
  • \n\t\t\t\t
  • Preloaded List\n\t\t\t\t

    Define and manage custom preloaded lists

    \n\t\t \t\t
  • \n\t\t
\n
\n `\n})\n\nexport class SettingsComponent implements OnInit {\n\thasAccess: boolean;\n\tmsgHead: Alert;\n\tmsg: Alert;\n\tacctNumber: string;\n\tuser: User;\n\n\tconstructor(private account: Account, private router: Router, private svc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.msgHead = new Alert();\n\t\tthis.msg = new Alert();\n\t}\n\n\tngOnInit() {\n\t\tthis.title.setTitles({\n\t\t\ttitle: 'Settings',\n\t\t\tdashboard: 'Settings',\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Settings', link: '' },\n\t\t]);\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.svc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(`You don't have access to this District number ${this.acctNumber}`);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.svc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tif (!this.hasAccess) {\n\t\t\treturn;\n\t\t}\n\t\tthis.user = this.account.getUser();\n\t}\n}\n","export const MIME_DOC = [\n\t'application/msword',\n\t'application/msword',\n\t'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n\t'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n\t'application/vnd.ms-word.document.macroEnabled.12',\n\t'application/vnd.ms-word.template.macroEnabled.12'\n];\n\nexport const MIME_XLS = [\n\t'application/vnd.ms-excel',\n\t'application/vnd.ms-excel',\n\t'application/vnd.ms-excel',\n\t'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n\t'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n\t'application/vnd.ms-excel.sheet.macroEnabled.12',\n\t'application/vnd.ms-excel.template.macroEnabled.12',\n\t'application/vnd.ms-excel.addin.macroEnabled.12',\n\t'application/vnd.ms-excel.sheet.binary.macroEnabled.12'\n];\n\nexport const MIME_IMAGE = [\n\t'image/jpeg',\n\t'image/png',\n\t'image/gif'\n];\n\nexport const MIME_TEXT = [\n\t'text/plain',\n\t'text/csv'\n];\n\nexport const MIME_APPLICATION = [\n\t'application/pdf',\n\t'application/json'\n];\n\n","export function trimReturnKey(text: string): string {\n\tlet s = text.trim().replace(/\\r?\\n/g, '');\n\treturn s;\n}\n","\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
e-Reg Customer Profile
\n\t\t\t\t\t\t\t\tName: {{data.eregCustomerProfile.firstName}} {{data.eregCustomerProfile.lastName}}
\n\t\t\t\t\t\t\t\te-Reg Username: {{data.eregCustomerProfile.username}}
\n\t\t\t\t\t\t\t\tEmail: {{data.eregCustomerProfile.email}}
\n\t\t\t\t\t\t\t\tAdditional Email: {{data.eregCustomerProfile.additionalEmail}}
\n\t\t\t\t\t\t\t\tPhone: {{data.eregCustomerProfile.phone}}
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Support Contact
\n\t\t\t\t\t\t\t\tPhone: 1-800-950-9202
\n\t\t\t\t\t\t\t\tEmail: support@centegix.com
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
District Information
\n\t\t\t\t\t\t\t\tDistrict Name: {{data.districtInformation.districtName}}
\n\t\t\t\t\t\t\t\tAddress: {{data.districtInformation.city}}, {{data.districtInformation.state}} {{data.districtInformation.zipCode}}
\n\t\t\t\t\t\t\t\tRegistrationID: {{data.districtInformation.accountRegistrationId}}
\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Current License
\n\t\t\t\t\t\t\t\tLicense Status: {{licenseStatus(data.accountlicense.status)}}
\n\t\t\t\t\t\t\t\tExpires: {{data.accountlicense.expirationDateValue | date:\"MM/dd/y\"}} ({{licenseRemainsDays(data.accountlicense.expirationDateValue)}}d)
\n\t\t\t\t\t\t\t\tRenew License\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Registration Information
\n\t\t\t\t\t\t\t\tLicense Code: {{data.accountlicense.code}}
\n\t\t\t\t\t\t\t\tDistrict Account Number: {{acctNumber}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t
\n\t
\n ","/// \nimport { OnInit, Component } from '@angular/core';\nimport { AppTitle } from './title';\nimport { DistrictService } from './district.service';\nimport { Router, RouterOutlet, ActivatedRoute } from '@angular/router';\nimport { Account, validateToken } from './account.service';\nimport { Alert } from './alert';\nimport { SubscriptionResponse } from './subscription';\nimport { elapsedDaysHoursMinutes } from './elapsed';\nimport { SubscriptionRegistrationURL } from './subscription_registration_url';\n\n\n@Component({\n\tselector: 'subscription',\n\ttemplate: `\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
e-Reg Customer Profile
\n\t\t\t\t\t\t\t\tName: {{data.eregCustomerProfile.firstName}} {{data.eregCustomerProfile.lastName}}
\n\t\t\t\t\t\t\t\te-Reg Username: {{data.eregCustomerProfile.username}}
\n\t\t\t\t\t\t\t\tEmail: {{data.eregCustomerProfile.email}}
\n\t\t\t\t\t\t\t\tAdditional Email: {{data.eregCustomerProfile.additionalEmail}}
\n\t\t\t\t\t\t\t\tPhone: {{data.eregCustomerProfile.phone}}
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Support Contact
\n\t\t\t\t\t\t\t\tPhone: 1-800-950-9202
\n\t\t\t\t\t\t\t\tEmail: support@centegix.com
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
District Information
\n\t\t\t\t\t\t\t\tDistrict Name: {{data.districtInformation.districtName}}
\n\t\t\t\t\t\t\t\tAddress: {{data.districtInformation.city}}, {{data.districtInformation.state}} {{data.districtInformation.zipCode}}
\n\t\t\t\t\t\t\t\tRegistrationID: {{data.districtInformation.accountRegistrationId}}
\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Current License
\n\t\t\t\t\t\t\t\tLicense Status: {{licenseStatus(data.accountlicense.status)}}
\n\t\t\t\t\t\t\t\tExpires: {{data.accountlicense.expirationDateValue | date:\"MM/dd/y\"}} ({{licenseRemainsDays(data.accountlicense.expirationDateValue)}}d)
\n\t\t\t\t\t\t\t\tRenew License\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Registration Information
\n\t\t\t\t\t\t\t\tLicense Code: {{data.accountlicense.code}}
\n\t\t\t\t\t\t\t\tDistrict Account Number: {{acctNumber}}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t
\n\t
\n `\n})\nexport class SubscriptionComponent implements OnInit {\n\tdata: SubscriptionResponse\n\tmsg: Alert;\n\tacctNumber: string;\n\thasAccess: boolean;\n\tshowRequestERegAccountCompletion: boolean;\n\teregAccountCompletionUrl: string;\n\tconstructor(private router: Router, private title: AppTitle, private account: Account, private dvc: DistrictService, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\ttitle.setTitles({\n\t\t\ttitle: 'Subscription',\n\t\t\tdashboard: 'Subscription'\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'Subscription', link: `` }\n\t\t]);\n\t\tthis.data = new SubscriptionResponse();\n\t\tthis.showRequestERegAccountCompletion = false;\n\t\tthis.eregAccountCompletionUrl = \"\";\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msg.error(\"You don't have access to this school number \" + this.acctNumber);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msg.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.loadData();\n\t}\n\n\tloadData() {\n\t\tthis.dvc.subscriptionApi(this.acctNumber).subscribe((urs: SubscriptionResponse) => {\n\t\t\tthis.data = urs;\n\t\t\t// when customer has no name, it is trial account\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t}\n\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t}\n\t\t});\n\t}\n\n\tlicenseRemainsDays(d: Date): number {\n\t\tlet el = elapsedDaysHoursMinutes(new Date(), d);\n\t\treturn el.days;\n\t}\n\n\tlicenseStatus(status: number): string {\n\t\tif (status === 1) {\n\t\t\treturn 'active';\n\t\t} else {\n\t\t\treturn 'inactive';\n\t\t}\n\t}\n\n\thexAcctNumber(acctNumber: number): string {\n\t\treturn this.dvc.hexAcctNumber(acctNumber);\n\t}\n\n\trequestERegAccountCompletion() {\n\t\tthis.eregAccountCompletionUrl = '';\n\t\t// wait 100 miliseconds just to give user a feedback that new link was generated\n\t\tsetTimeout(() => {\n\t\t\tthis.dvc.subscriptionRegistrationUrlApi(this.acctNumber).subscribe((urs: SubscriptionRegistrationURL) => {\n\t\t\t\tthis.eregAccountCompletionUrl = urs.registrationUrl;\n\t\t\t\tthis.msg.close();\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t\t} else {\n\t\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t});\n\t\t}, 100);\n\t}\n}\n","export class SupportContact {\n\tname: string;\n\temail: string;\n\tphone: string;\n}\n\nexport class DistrictInformation {\n\tdistrictName: string;\n\tstate: string;\n\tcity: string;\n\tzipCode: string;\n\taccountRegistrationId: string;\n\tacctNumber: number;\n\tdistrictAcctNumber: number;\n}\n\nexport class CurrentLicense {\n\tcode: string;\n\tlicenseTypeId: number;\n\texpirationDate: string;\n\texpirationDateValue: Date;\n\tstatus: number;\n\tsupportedAccounts: number;\n\n\tconstructor() {\n\t\tthis.expirationDateValue = new Date();\n\t}\n}\n\nexport class ERegCustomerProfile {\n\tcustId: number;\n\tfirstName: string;\n\tlastName: string;\n\tusername: string;\n\temail: string;\n\tadditionalEmail: string;\n\tphone: string;\n\tcreationDate: string;\n\tcreationDateValue: Date;\n\n\tconstructor() {\n\t\tthis.creationDateValue = new Date();\n\t}\n}\n\nexport class SubscriptionResponse {\n\tsupportContact: SupportContact;\n\tdistrictInformation: DistrictInformation;\n\taccountlicense: CurrentLicense;\n\teregCustomerProfile: ERegCustomerProfile;\n\n\tconstructor() {\n\t\tthis.supportContact = new SupportContact();\n\t\tthis.districtInformation = new DistrictInformation();\n\t\tthis.accountlicense = new CurrentLicense();\n\t\tthis.eregCustomerProfile = new ERegCustomerProfile();\n\t}\n}\n","export class SubscriptionRegistrationURL {\n\tregistrationUrl: string\n\n\tconstructor() {\n\t\tthis.registrationUrl = '';\n\t}\n}\n","import { Title } from '@angular/platform-browser';\nimport { Injectable, EventEmitter } from '@angular/core';\n\n@Injectable()\nexport class AppTitle {\n\tdashboardTitle: string;\n\tdashboardNav: string;\n\ttitle: Title;\n\tbreadcrumbs: Breadcrumb[];\n\tuseHashLocation: boolean;\n\ttitleEvent = new EventEmitter();\n\n\tconstructor() {\n\t\tthis.title = new Title({});\n\t\tthis.breadcrumbs = [];\n\t\tthis.useHashLocation = true;\n\n\t}\n\n\tsetTitles(t: any) {\n\t\tif (t.dashboard != null) {\n\t\t\tthis.setDashboardTitle(t.dashboard);\n\t\t}\n\t\tif (t.title != null) {\n\t\t\tthis.setTitle(t.title);\n\t\t}\n\t\tif (t.dashboardNav != null) {\n\t\t\tthis.setDashboardNav(t.dashboardNav);\n\t\t}\n\t}\n\n\tsetBreadcrumbs(bcs: Breadcrumb[]) {\n\t\tthis.breadcrumbs = bcs;\n\t\tthis.titleEvent.emit();\n\t}\n\n\tgetBreadcrumbsPrint(): BreadcrumbPrint[] {\n\t\tlet bcs = [];\n\t\tif (this.useHashLocation) {\n\t\t\tfor (let b of this.breadcrumbs) {\n\t\t\t\tlet nb = new BreadcrumbPrint();\n\t\t\t\tnb.link = '#' + b.link;\n\t\t\t\tnb.noLink = (b.link === '');\n\t\t\t\tnb.title = b.title;\n\t\t\t\tbcs.push(nb);\n\t\t\t}\n\t\t}\n\t\treturn bcs;\n\t}\n\n\tsetTitle(title: string) {\n\t\tthis.title.setTitle(title);\n\t}\n\n\tgetTitle() {\n\t\tthis.title.getTitle();\n\t}\n\n\tsetDashboardTitle(title: string) {\n\t\tthis.dashboardTitle = title;\n\t\tthis.titleEvent.emit();\n\t}\n\n\tgetDashboardTitle() {\n\t\treturn this.dashboardTitle;\n\t}\n\n\tsetDashboardNav(title: string) {\n\t\tthis.dashboardNav = title;\n\t}\n\n\tgetDashboardNav() {\n\t\treturn this.dashboardNav;\n\t}\n\n\texistsBreadcrumb(bc: Breadcrumb): boolean {\n\t\tfor (let b of this.breadcrumbs) {\n\t\t\tif (b.title === bc.title) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n}\n\nexport class Breadcrumb {\n\ttitle: string;\n\tlink: string;\n\tconstructor() {\n\t\tthis.title = '';\n\t\tthis.link = '';\n\t}\n}\n\nexport class BreadcrumbPrint {\n\ttitle: string;\n\tlink: string;\n\tnoLink: boolean;\n\tconstructor() {\n\t\tthis.title = '';\n\t\tthis.link = '';\n\t\tthis.noLink = false;\n\t}\n}\n","export class Token {\n\taccessToken: string;\n\texpiresIn: number;\n\tscope: string;\n\tstate: string;\n\ttokenType: string;\n\texpiresAt: Date;\n\trefreshToken: string;\n\n\tconstructor(token?: any) {\n\t\tlet t = token || {};\n\t\tthis.accessToken = t.accessToken || '';\n\t\tthis.expiresIn = t.expiresIn || 0;\n\t\tthis.scope = t.scope || '';\n\t\tthis.state = t.state || '';\n\t\tthis.tokenType = t.tokenType || '';\n\t\tthis.expiresAt = new Date(t.expiresAt) || new Date();\n\t\tthis.refreshToken = t.refreshToken || '';\n\t}\n}\n","import { Token } from './token';\n\nexport class TokenHelper {\n setToken(tokenName: string, data: Token) {\n localStorage.setItem(tokenName, JSON.stringify(data));\n }\n\n getToken(tokenName: string): Token {\n if (localStorage.getItem(tokenName) === null) {\n return null\n }\n return new Token(JSON.parse(localStorage.getItem(tokenName)));\n }\n\n removeToken(tokenName: string) {\n if (this.getToken(tokenName) != null) {\n localStorage.removeItem(tokenName);\n }\n }\n\n isTokenExpired(token: Token) {\n if (token === null) {\n return true\n }\n var d = token.expiresAt.getTime();\n var now = Date.now();\n return d < now;\n }\n\n //get expiration date in the moment of token response\n getExpiresAt(expiresIn: number): Date {\n var d = new Date();\n d = new Date(d.getTime() + expiresIn * 1000);\n return d;\n }\n}\n","import { Injectable, PipeTransform, Pipe } from '@angular/core';\n\n@Pipe({\n\tname: 'truncate',\n\tpure: true\n})\n@Injectable()\nexport class TruncatePipe implements PipeTransform {\n /**\n * A simple angular2 pipe which truncate strings.\n * The total number of character returned by this filter is value.length + trail.length\n *\n * @example `{{ \"Some too long string\" | truncate :15:'--':'left }}`\n *\n * @param {string} value Input string passed to the filter.\n * @param {string} [limit=10] The number of kept characters. If the `value` string has more than `limit` characters, they will be replaced by the `trail` string.\n * @param {string} [trail=\"...\"] The string which will replace extra characters.\n * @param {string} [position=\"right\"] The position of replacement string. Allowed values are 'left' | 'right' | 'middle'.\n * @returns {string}\n */\n\ttransform(value: string, limit: number, trail: string, position: string): string {\n\t\tvalue = value || ''; // handle undefined/null value\n\t\tlimit = limit || 10;\n\t\ttrail = trail || '...';\n\t\tposition = position || 'right';\n\n\t\tif (position === 'left') {\n\t\t\treturn value.length > limit\n\t\t\t\t? trail + value.substring(value.length - limit, value.length)\n\t\t\t\t: value;\n\t\t} else if (position === 'right') {\n\t\t\treturn value.length > limit\n\t\t\t\t? value.substring(0, limit) + trail\n\t\t\t\t: value;\n\t\t} else if (position === 'middle') {\n\t\t\treturn value.length > limit\n\t\t\t\t? value.substring(0, limit / 2) + trail + value.substring(value.length - limit / 2, value.length)\n\t\t\t\t: value;\n\t\t} else {\n\t\t\treturn value;\n\t\t}\n\t}\n}\n","import { DropdownOption } from './dropdown_option';\n\nexport function usStates(): DropdownOption[] {\n\treturn [\n\t\t{\n\t\t\ttitle: \"Alabama\",\n\t\t\tid: \"AL\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Alaska\",\n\t\t\tid: \"AK\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"American Samoa\",\n\t\t\tid: \"AS\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Arizona\",\n\t\t\tid: \"AZ\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Arkansas\",\n\t\t\tid: \"AR\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"California\",\n\t\t\tid: \"CA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Colorado\",\n\t\t\tid: \"CO\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Connecticut\",\n\t\t\tid: \"CT\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Delaware\",\n\t\t\tid: \"DE\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"District Of Columbia\",\n\t\t\tid: \"DC\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Florida\",\n\t\t\tid: \"FL\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Georgia\",\n\t\t\tid: \"GA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Guam\",\n\t\t\tid: \"GU\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Hawaii\",\n\t\t\tid: \"HI\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Idaho\",\n\t\t\tid: \"ID\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Illinois\",\n\t\t\tid: \"IL\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Indiana\",\n\t\t\tid: \"IN\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Iowa\",\n\t\t\tid: \"IA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Kansas\",\n\t\t\tid: \"KS\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Kentucky\",\n\t\t\tid: \"KY\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Louisiana\",\n\t\t\tid: \"LA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Maine\",\n\t\t\tid: \"ME\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Marshall Islands\",\n\t\t\tid: \"MH\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Maryland\",\n\t\t\tid: \"MD\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Massachusetts\",\n\t\t\tid: \"MA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Michigan\",\n\t\t\tid: \"MI\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Minnesota\",\n\t\t\tid: \"MN\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Mississippi\",\n\t\t\tid: \"MS\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Missouri\",\n\t\t\tid: \"MO\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Montana\",\n\t\t\tid: \"MT\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Nebraska\",\n\t\t\tid: \"NE\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Nevada\",\n\t\t\tid: \"NV\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"New Hampshire\",\n\t\t\tid: \"NH\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"New Jersey\",\n\t\t\tid: \"NJ\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"New Mexico\",\n\t\t\tid: \"NM\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"New York\",\n\t\t\tid: \"NY\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"North Carolina\",\n\t\t\tid: \"NC\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"North Dakota\",\n\t\t\tid: \"ND\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Northern Mariana Islands\",\n\t\t\tid: \"MP\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Ohio\",\n\t\t\tid: \"OH\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Oklahoma\",\n\t\t\tid: \"OK\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Oregon\",\n\t\t\tid: \"OR\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Palau\",\n\t\t\tid: \"PW\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Pennsylvania\",\n\t\t\tid: \"PA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Puerto Rico\",\n\t\t\tid: \"PR\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Rhode Island\",\n\t\t\tid: \"RI\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"South Carolina\",\n\t\t\tid: \"SC\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"South Dakota\",\n\t\t\tid: \"SD\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Tennessee\",\n\t\t\tid: \"TN\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Texas\",\n\t\t\tid: \"TX\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Utah\",\n\t\t\tid: \"UT\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Vermont\",\n\t\t\tid: \"VT\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Virgin Islands\",\n\t\t\tid: \"VI\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Virginia\",\n\t\t\tid: \"VA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Washington\",\n\t\t\tid: \"WA\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"West Virginia\",\n\t\t\tid: \"WV\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Wisconsin\",\n\t\t\tid: \"WI\"\n\t\t},\n\t\t{\n\t\t\ttitle: \"Wyoming\",\n\t\t\tid: \"WY\"\n\t\t}\n\t];\n}\n","export class User {\n\tfirstName: string;\n\tlastName: string;\n\temail: string;\n\tusername: string;\n\ttimeZone: string;\n\tuserId: string;\n\tphoneNumber: string;\n\tconstructor() {\n\t\tthis.firstName = 'Testing';\n\t\tthis.lastName = '';\n\t\tthis.email = '';\n\t\tthis.timeZone = '';\n\t\tthis.username = '';\n\t\tthis.userId = '';\n\t\tthis.phoneNumber = '';\n\t}\n\n\tgetUserProfile() {\n\t\treturn {\n\t\t\tfirstName: this.firstName,\n\t\t\tlastName: this.lastName,\n\t\t\temail: this.email,\n\t\t\tusername: this.username,\n\t\t\ttimeZone: this.timeZone,\n\t\t\tuserId: this.userId,\n\t\t\tphoneNumber: this.phoneNumber,\n\t\t}\n\t}\n}\n","\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Email Address

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
NameEmailStatusRolesOwnerActions
{{user.userId != row.userId ? row.firstName + ' ' +row.lastName : 'You'}}{{row.email}}{{row.status}}\n\t\t\t\t\t\t\t\t{{role}} x\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
  • {{r}}
  • \n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
{{row.owner}}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n ","/// \nimport { OnInit, Component } from '@angular/core';\nimport { FormControl, AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { AppTitle } from './title';\nimport { DistrictService } from './district.service';\nimport { Alert } from './alert';\nimport { AppValidators, controlErrors } from './app.validators';\nimport { Account, validateToken } from './account.service';\nimport { InviteUser } from './invite_district_user';\nimport { DistrictUser } from './district_user';\nimport { User } from './user';\n\n@Component({\n\tselector: 'user-management',\n\tstyles: [`\n .tag {\n margin-right:2px;\n background-color:#e0e0e0;\n border-radius:4px;\n padding:5px;\n }\n\t\t.tag-close {\n\t\t\tmargin-left:5px;\n\t \t cursor: pointer;\n\t }\n `],\n\ttemplate: `\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n

Email Address

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
NameEmailStatusRolesOwnerActions
{{user.userId != row.userId ? row.firstName + ' ' +row.lastName : 'You'}}{{row.email}}{{row.status}}\n\t\t\t\t\t\t\t\t{{role}} x\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
  • {{r}}
  • \n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
{{row.owner}}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n `\n})\n\nexport class UserManagementComponent implements OnInit {\n\tdata: DistrictUser[];\n\tcardRows: number[]; //cards rows\n\tmsg: Alert;\n\tmsgHead: Alert;\n\tacctNumber: string;\n\tform: FormGroup;\n\tfobj: InviteUser;\n\troles: string[];\n\thasAccess: boolean;\n\tmaxPageSize: number;\n\tcurrentRow: DistrictUser;\n\tuser: User;\n\tconstructor(private account: Account, private router: Router, private dvc: DistrictService, fb: FormBuilder, private title: AppTitle, private activatedRoute: ActivatedRoute) {\n\t\tthis.hasAccess = true;\n\t\tthis.msg = new Alert();\n\t\tthis.msgHead = new Alert();\n\t\ttitle.setTitles({\n\t\t\ttitle: 'User Management',\n\t\t\tdashboard: 'User Management'\n\t\t});\n\t\tthis.title.setBreadcrumbs([\n\t\t\t{ title: 'User Management', link: `` }\n\t\t]);\n\t\tthis.form = fb.group({\n\t\t\temail: ['', Validators.compose([Validators.required, AppValidators.email])],\n\t\t});\n\t\tthis.fobj = new InviteUser()\n\t\tthis.maxPageSize = 20;\n\t\tthis.data = [];\n\t\tthis.roles = ['admin', 'user', 'vv-module', 'powerschool', 'inow-module', 'one-roster']\n\t\tthis.currentRow = new DistrictUser();\n\t\tthis.clickedOutside = this.clickedOutside.bind(this);\n\t}\n\n\tngOnInit() {\n\t\tthis.acctNumber = this.activatedRoute.snapshot.params['acctNumber'];\n\t\tif (this.acctNumber != null) {\n\t\t\tthis.dvc.validateAcctNumber(this.acctNumber)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tif (!res) {\n\t\t\t\t\t\tthis.msgHead.error(\"You don't have access to this district number \" + this.acctNumber);\n\t\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\t}\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t});\n\t\t}\n\t\tthis.loadData();\n\t\tthis.user = this.account.getUser();\n\t}\n\n\tview() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn\n\t\t}\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.loadData();\n\t}\n\n\tloadData() {\n\t\tthis.dvc.districtUsersApi(this.acctNumber).subscribe((urs: DistrictUser[]) => {\n\t\t\tthis.data = urs;\n\t\t\tthis.msg.close();\n\t\t}, err => {\n\t\t\tconsole.log(err);\n\t\t\tif (this.dvc.isErrNotFound(err)) {\n\t\t\t\tthis.msg.warning(this.dvc.getUserError(err));\n\t\t\t} else {\n\t\t\t\tif (this.dvc.isErrUnauthorized(err)) {\n\t\t\t\t\tthis.hasAccess = false;\n\t\t\t\t\tthis.msgHead.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t} else {\n\t\t\t\t\tthis.msg.error(this.dvc.getUserErrorDefault(err));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tdisplayErrors(f: FormGroup) {\n\t\tvar message = '';\n\t\tcontrolErrors(f, (c: any, err: any) => {\n\t\t\tmessage += err + '
';\n\t\t});\n\t\tthis.msg.errorHtml(message);\n\t}\n\n\tremoveRole(row: DistrictUser, idx: number) {\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tif (this.user.userId == row.userId && row.roles[idx] == 'admin') {\n\t\t\tthis.msgHead.error('You can not remove yourself from admin role, please use another account to remove this role.');\n\t\t\treturn;\n\t\t}\n\t\trow.roles.splice(idx, 1);\n\t\tthis.dvc.updateDistrictUserApi(this.acctNumber, row)\n\t\t\t.subscribe(res => {\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msgHead.error(e);\n\t\t\t});\n\t}\n\n\taddRole(row: DistrictUser, role) {\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tif (row.roles.indexOf(role) == -1) {\n\t\t\trow.roles.push(role);\n\t\t\tthis.dvc.updateDistrictUserApi(this.acctNumber, row)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t});\n\t\t}\n\t\tthis.clickedOutside();\n\t}\n\n\topenAddRole(row: DistrictUser) {\n\t\trow.openAddRole = !row.openAddRole;\n\t\tthis.currentRow = row;\n\t}\n\n\tclickedOutside() {\n\t\tif (this.currentRow != null) {\n\t\t\tthis.currentRow.openAddRole = false;\n\t\t}\n\t}\n\n\tinvite() {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tif (!this.form.valid) {\n\t\t\tthis.displayErrors(this.form);\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tthis.dvc.inviteDistrictUserApi(this.acctNumber, this.fobj)\n\t\t\t.subscribe(res => {\n\t\t\t\tfor (var v in this.data) {\n\t\t\t\t\tif (this.data[v].email == res.email) {\n\t\t\t\t\t\tthis.msg.success(`We have sent re-invite email to ${res.email}.`);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.data.push(res);\n\t\t\t\tthis.msg.success(`We have sent invite email to ${res.email}.`);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msgHead.error(e);\n\t\t\t});\n\t}\n\n\tremoveUser(row: DistrictUser) {\n\t\tif (!validateToken()) {\n\t\t\tthis.router.navigate(['/login']);\n\t\t\treturn;\n\t\t}\n\t\tif (this.user.userId == row.userId) {\n\t\t\tthis.msgHead.error('You can not remove yourself, please use another account to remove this user.');\n\t\t\treturn;\n\t\t}\n\t\tthis.msgHead.close();\n\t\tthis.msg.close();\n\t\tif (row.owner == 'user') {\n\t\t\tthis.dvc.removeDistrictUserApi(this.acctNumber, row)\n\t\t\t\t.subscribe(res => {\n\t\t\t\t\tthis.data.splice(this.data.indexOf(row), 1);\n\t\t\t\t}, err => {\n\t\t\t\t\tconsole.log(err);\n\t\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\t\tthis.msgHead.error(e);\n\t\t\t\t});\n\t\t}\n\t\tthis.clickedOutside();\n\t}\n\n\treInvite(row: DistrictUser) {\n\t\tlet req = new InviteUser();\n\t\treq.email = row.email;\n\t\tthis.dvc.inviteDistrictUserApi(this.acctNumber, req)\n\t\t\t.subscribe(res => {\n\t\t\t\tfor (var v in this.data) {\n\t\t\t\t\tif (this.data[v].email == res.email) {\n\t\t\t\t\t\tthis.msg.success(`We have sent re-invite email to ${res.email}.`);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.data.push(res);\n\t\t\t}, err => {\n\t\t\t\tconsole.log(err);\n\t\t\t\tlet e = this.dvc.getUserErrorDefault(err);\n\t\t\t\tthis.msgHead.error(e);\n\t\t\t});\n\t}\n}\n","export const environment = {\n production: true,\n isMoc: false,\n isApiMoc: false,\n clientId: 'ea15a6b6-b59c-4854-9bd2-4e6cf9c6a908',\n authApiUrl: 'https://account.identakid.net/api',\n authAppUrl: 'https://account.identakid.net/#',\n districtApiUrl: 'https://district.ccssvm.com/api',\n powerschoolAppUrl: 'https://powerschool.ccssvm.com/#',\n oneRosterAppUrl: 'https://oneroster.ccssvm.com/#',\n identityAppUrl: 'https://identity.ccssvm.com/#',\n version: 'v1.2.29'\n};\n","import './polyfills.ts';\n\nimport { enableProdMode } from '@angular/core';\nimport { environment } from './environments/environment';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { AppModule } from './app/app.module';\n\nif (environment.production) {\n\t enableProdMode();\n\n\t// disable console logs\n\twindow.console.log = function() { };\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule);\n","// This file includes polyfills needed by Angular 2 and is loaded before\n// the app. You can add your own extra polyfills to this file.\nimport 'core-js/es6/symbol';\nimport 'core-js/es6/object';\nimport 'core-js/es6/function';\nimport 'core-js/es6/parse-int';\nimport 'core-js/es6/parse-float';\nimport 'core-js/es6/number';\nimport 'core-js/es6/math';\nimport 'core-js/es6/string';\nimport 'core-js/es6/date';\nimport 'core-js/es6/array';\nimport 'core-js/es6/regexp';\nimport 'core-js/es6/map';\nimport 'core-js/es6/set';\nimport 'core-js/es6/reflect';\n\nimport 'core-js/es7/reflect';\nimport 'zone.js/dist/zone';\n"],"sourceRoot":""}