{"version":3,"sources":["./node_modules/rxjs-compat/_esm5/Observable.js","./src/app/shared/filter.service.ts","./src/app/shared/orderby.service.ts","./src/app/shared/utilities.service.ts"],"names":[],"mappings":"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","file":"default~app-admin-admin-module~app-blog-blog-module.js","sourcesContent":["export { Observable } from 'rxjs';\n//# sourceMappingURL=Observable.js.map","import {Injectable} from '@angular/core';\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n@Injectable()\r\nexport class FilterService {\r\n constructor() {}\r\n\r\n filterFromMultiple(items: Object, group: Array): Array {\r\n let itemsToLoop: Array = [];\r\n let filtered = group;\r\n let minDate = 0;\r\n let maxDate = 0;\r\n let date1, date2;\r\n\r\n //set up array of props from items object that have values\r\n //need to check for null and empty string instead of true/false, as filtering by checkbox will use a 'false' value!\r\n for(let item in items) {\r\n if(items[item] !== null && items[item] !== '') {\r\n itemsToLoop.push({\r\n property: item,\r\n value: items[item]\r\n });\r\n }\r\n }\r\n\r\n //check props array for Date objects- if exist, get min and max for range checking\r\n itemsToLoop.forEach(item => {\r\n if(item['value'] instanceof Date) {\r\n if(!date1) {\r\n date1 = +item['value'];\r\n } else {\r\n date2 = +item['value'];\r\n }\r\n\r\n maxDate = Math.max(date1, date2);\r\n minDate = Math.min(date1, date2);\r\n }\r\n });\r\n\r\n for(let i = 0, l = itemsToLoop.length; i < l; i += 1) {\r\n let propCheck = itemsToLoop[i]['property'];\r\n let valueCheck = itemsToLoop[i]['value'];\r\n let datePropName = '';\r\n\r\n //if a date is submitted in search params, find the property name of the array being searched where value = type Date to be used in filter below\r\n if(valueCheck instanceof Date) {\r\n for(let j = 0; j < 1; j += 1) {\r\n for(let p in group[j]) {\r\n if(group[j][p] instanceof Date) {\r\n datePropName = p;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n filtered = filtered.filter((property, index, arr) => {\r\n if(valueCheck instanceof Date) {\r\n let thisDateAsNumber = +new Date(property[datePropName]);\r\n return thisDateAsNumber >= minDate && thisDateAsNumber <= maxDate;\r\n } else {\r\n return property[propCheck] === valueCheck;\r\n }\r\n });\r\n }\r\n\r\n return filtered;\r\n }\r\n}","import {Injectable} from '@angular/core';\r\n\r\ninterface OrderConfig {\r\n param: string;\r\n group: any[];\r\n altParam?: string;\r\n}\r\n\r\n@Injectable()\r\nexport class OrderByService {\r\n sortBy: string = '';\r\n currentSortDirection: string = 'asc';\r\n currentSortParam: string = '';\r\n\r\n resetService() {\r\n this.sortBy = '';\r\n this.currentSortDirection = 'asc';\r\n this.currentSortParam = '';\r\n }\r\n\r\n orderByParam(param, group, altParam?) {\r\n const presort = group;\r\n let final = [...presort];\r\n\r\n if(param === this.currentSortParam && this.currentSortDirection === 'asc') {\r\n final = this.orderByParamDescending(param, presort, altParam);\r\n this.currentSortDirection = 'desc';\r\n this.sortBy = `${param}down`;\r\n } else {\r\n final = this.orderByParamAscending(param, presort, altParam);\r\n this.currentSortDirection = 'asc';\r\n this.sortBy = `${param}up`;\r\n }\r\n this.currentSortParam = param;\r\n return final;\r\n }\r\n\r\n //order ascending- start with lowest\r\n orderByParamAscending(param, group, altParam?) {\r\n return group.sort((a, b): any => {\r\n //account for possible null values - set to empty str if so\r\n if((!a[param] && typeof a[param] !== 'boolean' && a[param] !== 0)) {\r\n a[param] = '';\r\n }\r\n if((!b[param] && typeof b[param] !== 'boolean' && b[param] !== 0)) {\r\n b[param] = '';\r\n }\r\n\r\n let first = a[param], second = b[param];\r\n let altFirst, altSecond;\r\n\r\n if(altParam) {\r\n altFirst = a[altParam];\r\n altSecond = b[altParam];\r\n\r\n if(altParam.indexOf('date') !== -1 || altParam.indexOf('time') !== -1) {\r\n altFirst = +new Date(a[altParam]);\r\n altSecond = +new Date(b[altParam]);\r\n } else if(typeof a[altParam] === 'string') {\r\n altFirst = a[altParam].toLowerCase();\r\n altSecond = b[altParam].toLowerCase();\r\n }\r\n }\r\n\r\n if(param.indexOf('date') !== -1 || param.indexOf('time') !== -1) {\r\n first = +new Date(a[param]);\r\n second = +new Date(b[param]);\r\n } else if(a[param] == +a[param]) {\r\n first = +a[param];\r\n second = +b[param];\r\n } else if(typeof a[param] === 'string') {\r\n first = a[param].toLowerCase();\r\n second = b[param].toLowerCase();\r\n }\r\n\r\n if(first < second) {\r\n return -1;\r\n } else if(second < first) {\r\n return 1;\r\n } else {\r\n if(altParam) {\r\n if(altFirst < altSecond) {\r\n return -1;\r\n } else if(altSecond < altFirst) {\r\n return 1;\r\n }\r\n return 0;\r\n }\r\n return 0;\r\n }\r\n });\r\n }\r\n\r\n //order descending- start with greatest\r\n orderByParamDescending(param, group, altParam?) {\r\n return group.sort((a, b): number => {\r\n //account for possible null values - set to empty str if so\r\n if((!a[param] && typeof a[param] !== 'boolean' && a[param] !== 0)) {\r\n a[param] = '';\r\n }\r\n if((!b[param] && typeof b[param] !== 'boolean' && b[param] !== 0)) {\r\n b[param] = '';\r\n }\r\n\r\n let first = a[param], second = b[param];\r\n let altFirst, altSecond;\r\n\r\n //altParam provides fallback sorting- need to make same checks for date/str as normal param\r\n if(altParam) {\r\n altFirst = a[altParam];\r\n altSecond = b[altParam];\r\n\r\n if(altParam.indexOf('date') !== -1 || altParam.indexOf('time') !== -1) {\r\n altFirst = +new Date(a[altParam]);\r\n altSecond = +new Date(b[altParam]);\r\n } else if(typeof a[altParam] === 'string') {\r\n altFirst = a[altParam].toLowerCase();\r\n altSecond = b[altParam].toLowerCase();\r\n }\r\n }\r\n\r\n //properly format sort data (date/string here)\r\n if(param.indexOf('date') !== -1 || param.indexOf('time') !== -1) {\r\n first = +new Date(a[param]);\r\n second = +new Date(b[param]);\r\n } else if(a[param] == +a[param]) {\r\n first = +a[param];\r\n second = +b[param];\r\n } else if(typeof a[param] === 'string') {\r\n first = a[param].toLowerCase();\r\n second = b[param].toLowerCase();\r\n }\r\n\r\n if(first < second) {\r\n return 1;\r\n } else if(second < first) {\r\n return -1;\r\n } else {\r\n if(altParam) {\r\n if(altFirst < altSecond) {\r\n return -1;\r\n } else if(altSecond < altFirst) {\r\n return 1;\r\n }\r\n return 0;\r\n }\r\n return 0;\r\n }\r\n });\r\n }\r\n}","\r\nimport {throwError as observableThrowError } from 'rxjs';\r\nimport CONFIG from '../../config';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { Injectable } from '@angular/core';\r\nimport { Location } from '@angular/common';\r\nimport { Headers, RequestOptions } from '@angular/http';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { NotificationService } from '../notification/notification.service';\r\nimport { AuthService } from './auth.service';\r\nimport { BackendService } from './backend.service';\r\n\r\n@Injectable()\r\nexport class Utilities {\r\n focused;\r\n loading: boolean = true;\r\n checkvalue:any;\r\n \r\n constructor(\r\n public location: Location,\r\n public notificationService: NotificationService,\r\n public authService: AuthService,\r\n public backendService: BackendService,\r\n public router: Router\r\n ) {}\r\n\r\n //display server error- if due to jwt expiration, log out and redirect to login screen\r\n serverErrorOrTimeout(error: string, logout?: boolean): void {\r\n this.notificationService.showNotification({ timer: 5000, message: error, type: 'error', closeable: false });\r\n\r\n //if error is due to session time out, log the user out\r\n if(error === 'Session Expired- please log in' || logout) {\r\n this.authService.logout();\r\n }\r\n }\r\n\r\n //when sending jwt to server for data, check status (admin vs non admin, user key for profile, etc)\r\n // checkLoginStatus(): Observable {\r\n // //return an observable so end function can subscribe and perform actions based on result after it comes in\r\n // //return this.backendService.getData(`${CONFIG.loginApiUrlBase}/checklogin`);\r\n // return Observable.of(true);\r\n // }\r\n\r\n checkLoginForAuthGuard(): Observable {\r\n if(sessionStorage.getItem('partial_login') === 'true') {\r\n this.notificationService.showNotification({ \r\n timer: 5000, message: 'Please finish security process', \r\n type: 'error', closeable: false \r\n });\r\n return Observable.of(false)\r\n .do(() => {\r\n return this.authService.logout();\r\n });\r\n } else {\r\n return this.backendService.getData(`${CONFIG.loginApiUrlBase}/checklogin`)\r\n .map(response => {\r\n //console.log(response.result);\r\n //update shared 'loggedIn' variable that maintains state while in app \r\n this.checkvalue=response['result'];\r\n this.authService.loggedIn =true;\r\n //update user_type variable that checks user's admin vs employee status \r\n return this.checkvalue;\r\n })\r\n .catch(error => {\r\n return Observable.throw(this.serverErrorOrTimeout(error));\r\n });\r\n // return this.backendService.getData(`${CONFIG.loginApiUrlBase}/check-login`)\r\n // //.map(response => JSON.parse(response))\r\n // .map(response => {\r\n // if(response.result) { \r\n // //valid jwt auth\r\n // this.authService.loggedIn = response.result;\r\n // return response.result;\r\n // } else {\r\n // //auth error\r\n // return observableThrowError(this.serverErrorOrTimeout(response.msg, true));\r\n // }\r\n // })\r\n // .catch(error => {\r\n // return observableThrowError(this.serverErrorOrTimeout(error));\r\n // });\r\n }\r\n }\r\n democheckLoginForAuthGuard(): Observable {\r\n console.log('demo Auth gurd');\r\n if(sessionStorage.getItem('partial_login') === 'true') {\r\n this.notificationService.showNotification({ \r\n timer: 5000, message: 'Please finish security process', \r\n type: 'error', closeable: false \r\n });\r\n return Observable.of(false)\r\n .do(() => {\r\n return this.authService.logout1();\r\n });\r\n } else {\r\n return this.backendService.getDemoData(`${CONFIG.DemologinApiUrlBase}`)\r\n .map(response => {\r\n //console.log(response.result);\r\n //update shared 'loggedIn' variable that maintains state while in app \r\n this.checkvalue=response['result'];\r\n this.authService.loggedIn =true;\r\n //update user_type variable that checks user's admin vs employee status \r\n console.log('demo url');\r\n console.log(this.checkvalue); \r\n return this.checkvalue;\r\n \r\n })\r\n .catch(error => {\r\n return Observable.throw(this.serverErrorOrTimeout(error));\r\n }); \r\n }\r\n }\r\n //all purpose cancel and return (if passed with nothing, just shows 'update canceled')\r\n cancel(msg='Update Canceled', type='warning'): void {\r\n this.location.back();\r\n this.notificationService.showNotification({\r\n timer: 2000,\r\n message: msg,\r\n type: type\r\n });\r\n }\r\n}\r\n"],"sourceRoot":"webpack:///"}