{"version":3,"file":"main.2b6baf38c6c565cd.js","mappings":"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IAChB,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;CAC1D,CAAC;AAEF,IAAI,6EAAsB,EAAE;IAC1B,6DAAc,EAAE,CAAC;CAClB;AAED,uEAAuB,SAAS,CAAC,CAAC,eAAe,CAAC,sDAAS,CAAC;KACzD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAElC,gFAAgF;;;;;;;;;;;ACrBhF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./src/app/_guards/admin.guard.ts","./src/app/_guards/client.guard.ts","./src/app/_guards/serviceMan.guard.ts","./src/app/_guards/tollDistributer.guard.ts","./src/app/_models/enums/DeliveryOptions.ts","./src/app/_resolvers/pass-token.resolver.ts","./src/app/_resolvers/positions-route.resolver.ts","./src/app/_resolvers/user-edit.resolver.ts","./src/app/_services/auth.service.ts","./src/app/_services/finance.service.ts","./src/app/_services/form-group-validation.service.ts","./src/app/_services/map.service.ts","./src/app/_services/notification.service.ts","./src/app/_services/user.service.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/app.routing.ts","./src/app/counter/counter.component.ts","./src/app/counter/counter.component.html","./src/app/fetch-data/fetch-data.component.ts","./src/app/fetch-data/fetch-data.component.html","./src/app/forgot-pass-change/forgot-pass-change.component.ts","./src/app/forgot-pass-change/forgot-pass-change.component.html","./src/app/home/home.component.ts","./src/app/home/home.component.html","./src/app/layouts/admin/admin-layout.component.ts","./src/app/layouts/admin/admin-layout.component.html","./src/app/layouts/admin/fixedplugin/fixedplugin.component.ts","./src/app/layouts/admin/fixedplugin/fixedplugin.component.html","./src/app/layouts/admin/fixedplugin/fixedplugin.module.ts","./src/app/layouts/admin/footer/footer.component.ts","./src/app/layouts/admin/footer/footer.module.ts","./src/app/layouts/admin/navbar-service.service.ts","./src/app/layouts/admin/navbar/navbar.component.ts","./src/app/layouts/admin/navbar/navbar.component.html","./src/app/layouts/admin/navbar/navbar.module.ts","./src/app/layouts/admin/sidebar/sidebar.component.ts","./src/app/layouts/admin/sidebar/sidebar.component.html","./src/app/layouts/admin/sidebar/sidebar.module.ts","./src/app/layouts/auth/auth-layout.component.ts","./src/app/layouts/auth/auth-layout.component.html","./src/app/layouts/client/animations/animations.ts","./src/app/layouts/client/client-layout.component.ts","./src/app/layouts/client/client-layout.component.html","./src/app/layouts/client/component/header/header.component.ts","./src/app/layouts/client/component/header/header.component.html","./src/app/layouts/client/component/sidebar/sidebar.component.ts","./src/app/layouts/client/component/sidebar/sidebar.component.html","./src/app/layouts/client/component/toggle-sidebar/toggle-sidebar.component.ts","./src/app/layouts/client/component/toggle-sidebar/toggle-sidebar.component.html","./src/app/layouts/client/services/sidebar.service.ts","./src/app/layouts/serviceMan/serviceMan-layout.component.ts","./src/app/layouts/serviceMan/serviceMan-layout.component.html","./src/app/layouts/tollDistributerLayout/tollDistributerLayout.component.ts","./src/app/layouts/tollDistributerLayout/tollDistributerLayout.component.html","./src/app/log-list/log-list.component.ts","./src/app/log-list/log-list.component.html","./src/app/login/changeDialog/changeDialog.component.ts","./src/app/login/changeDialog/changeDialog.component.html","./src/app/login/forgot-pass-dialog/forgot-pass-dialog.component.ts","./src/app/login/forgot-pass-dialog/forgot-pass-dialog.component.html","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/md/md-chart/md-chart.component.ts","./src/app/md/md-chart/md-chart.component.html","./src/app/md/md-table/md-table.component.ts","./src/app/md/md-table/md-table.component.html","./src/app/md/md.module.ts","./src/app/pages/admin/add-client-finance/add-client-finance.component.ts","./src/app/pages/admin/add-client-finance/add-client-finance.component.html","./src/app/pages/admin/display-finance-account/invoice-send-options/invoice-send-options.component.ts","./src/app/pages/admin/display-finance-account/invoice-send-options/invoice-send-options.component.html","./src/app/shared/confirmDialog/confirmDialog.component.ts","./src/app/shared/confirmDialog/confirmDialog.component.html","./src/app/shared/confirmDialog/services/confirmation.service.ts","./src/app/shared/errorMessageDialog/errorMessageDialog.component.ts","./src/app/shared/errorMessageDialog/errorMessageDialog.component.html","./src/app/shared/errorMessageDialog/services/errorMessage.service.ts","./src/app/shared/errorResponse/errorResponse.service.ts","./src/app/shared/progressLoader/progressLoader.component.ts","./src/app/shared/progressLoader/progressLoader.component.html","./src/app/shared/progressLoader/progressLoader.module.ts","./src/app/vehiclePosition/vehiclePosition.component.ts","./src/app/vehiclePosition/vehiclePosition.component.html","./src/app/vehicleRoutes/mapRoutes/mapRoutes.component.ts","./src/app/vehicleRoutes/mapRoutes/mapRoutes.component.html","./src/app/vehicleRoutes/vehicleRoutes.component.ts","./src/app/vehicleRoutes/vehicleRoutes.component.html","./src/environments/environment.ts","./src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { CanActivate } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { Router } from '@angular/router';\r\nimport { NotificationService } from '../_services/notification.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AdminGuard implements CanActivate {\r\n \r\n constructor(\r\n private authService: AuthService, \r\n private router: Router,\r\n private notify: NotificationService\r\n ) { }\r\n\r\n isLoggedInAsAdmin(): boolean {\r\n const isLogged = this.authService.isLoggedInAdmin(),\r\n isClientIdZero = this.authService.getAdminUser()?.clientId === 0,\r\n isAdminRole = this.authService.getAdminUser()?.role === 0;\r\n\r\n return isLogged && isClientIdZero && isAdminRole;\r\n }\r\n\r\n navigateLogin(): void {\r\n this.notify.warning('Morate se ulogovati');\r\n this.router.navigateByUrl('/login');\r\n }\r\n\r\n canActivate(): boolean {\r\n if (this.isLoggedInAsAdmin()) {\r\n return true;\r\n }\r\n\r\n this.navigateLogin();\r\n return false;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { CanActivate } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { Router } from '@angular/router';\r\nimport { NotificationService } from '../_services/notification.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClientGuard implements CanActivate {\r\n\r\n constructor(\r\n private authService: AuthService, \r\n private router: Router,\r\n private notify: NotificationService\r\n ) { }\r\n\r\n isLoggedInAsClient(): boolean {\r\n const isLoggedIn = this.authService.isLoggedInClient(),\r\n isValidClientId = this.authService.getClientUser()?.clientId !== 0,\r\n isRoleClient = this.authService.getClientUser()?.role === 1;\r\n\r\n return isLoggedIn && isValidClientId && isRoleClient;\r\n }\r\n\r\n navigateLogin(): void {\r\n this.notify.warning('Morate se ulogovati');\r\n this.router.navigateByUrl('/login');\r\n }\r\n\r\n canActivate(): boolean {\r\n if (this.isLoggedInAsClient()) {\r\n return true;\r\n }\r\n\r\n this.navigateLogin();\r\n return false;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { NotificationService } from '../_services/notification.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ServiceManGuard implements CanActivate {\r\n\r\n constructor(\r\n private authService: AuthService, \r\n private router: Router,\r\n private notify: NotificationService\r\n ) { }\r\n\r\n isLoggedInAsServiceMan(): boolean {\r\n const isLoggedIn = this.authService.isLoggedInServiceMan(),\r\n isClientIdValid = this.authService.getServiceManUser()?.clientId === 0,\r\n isRoleServiceMan = this.authService.getServiceManUser()?.role === 2;\r\n\r\n return isLoggedIn && isClientIdValid && isRoleServiceMan;\r\n }\r\n\r\n navigateLogin(): void {\r\n this.notify.warning('Morate se ulogovati');\r\n this.router.navigateByUrl('/login');\r\n }\r\n\r\n canActivate(): boolean {\r\n if (this.isLoggedInAsServiceMan()) {\r\n return true;\r\n }\r\n\r\n this.navigateLogin();\r\n return false;\r\n }\r\n}\r\n","import { CanActivate, Router } from \"@angular/router\";\r\nimport { AuthService } from \"../_services/auth.service\";\r\nimport { NotificationService } from \"../_services/notification.service\";\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TollDistributerGuard implements CanActivate {\r\n\r\n private _srbTollDistributerRole = 3;\r\n\r\n constructor(\r\n private authService: AuthService, \r\n private router: Router,\r\n private notify: NotificationService\r\n ) { }\r\n\r\n canActivate(): boolean {\r\n return this.isLoggedInAsTollDistributer() || this.navigateLogin();\r\n } \r\n\r\n private isLoggedInAsTollDistributer(): boolean {\r\n const isLoggedIn = this.authService.isLoggedInTollDistributer(),\r\n tollDistributerUser = this.authService.getTollDistributerUser(),\r\n isClientIdValid = tollDistributerUser?.clientId > 0,\r\n isDistributerRole = tollDistributerUser?.role === this._srbTollDistributerRole;\r\n return isLoggedIn && isClientIdValid && isDistributerRole;\r\n }\r\n\r\n private navigateLogin(): boolean {\r\n this.notify.warning('Morate se ulogovati');\r\n this.router.navigateByUrl('/login');\r\n return false;\r\n }\r\n}\r\n","export enum DeliveryOptions {\r\n SendToEInvoicesAPI = 1,\r\n SendToEInvoicesAPIAndEmail = 2,\r\n SendToEmail = 3\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Resolve, Router, ActivatedRoute} from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { NotificationService } from '../_services/notification.service';\r\nimport { AuthService } from '../_services/auth.service';\r\n\r\n@Injectable()\r\nexport class PassTokenResolver {\r\n model: any = {};\r\n constructor(private authService: AuthService, private router: Router,\r\n private notify: NotificationService) {}\r\n\r\n resolve( route: ActivatedRoute) {\r\n this.model.token = route.queryParams['token'];\r\n return this.authService.checkToken(this.model).pipe(\r\n catchError(error => {\r\n this.notify.error('Zahtev za izmenu vise nije validan, posaljite novi');\r\n this.router.navigate(['/login']);\r\n return of(null);\r\n })\r\n );\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Resolve, Router, ActivatedRouteSnapshot} from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { NotificationService } from '../_services/notification.service';\r\nimport { VehiclePosition } from '../_models/vehiclePosition';\r\nimport { MapService } from '../_services/map.service';\r\n\r\n@Injectable()\r\nexport class PositionRouteResolver implements Resolve {\r\n constructor(private mapService: MapService, private router: Router,\r\n private notify: NotificationService) {}\r\n\r\n resolve(route: ActivatedRouteSnapshot): Observable {\r\n return this.mapService.getPositions(route.params['date'], route.params['id']).pipe(\r\n catchError(error => {\r\n this.notify.error(error);\r\n this.router.navigate(['/routes']);\r\n return of(null);\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { User } from '../_models/user';\r\nimport { Resolve, Router, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { UserService } from '../_services/user.service';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { NotificationService } from '../_services/notification.service';\r\nimport { AuthService } from '../_services/auth.service';\r\n\r\n@Injectable()\r\nexport class UserEditResolver implements Resolve {\r\n\r\n constructor(\r\n private userService: UserService, \r\n private router: Router, \r\n private authService: AuthService,\r\n private notify: NotificationService\r\n ) { }\r\n\r\n isUserValid(routeId: number, adminUser: User): boolean {\r\n const isRouteEqual = routeId !== adminUser.id,\r\n isRoleValid = adminUser.role !== 0;\r\n\r\n return isRouteEqual && isRoleValid;\r\n }\r\n\r\n resolve(route: ActivatedRouteSnapshot): Observable {\r\n const routeId = Number(route.params['id']),\r\n user = this.authService.getAdminUser();\r\n\r\n if (this.isUserValid(routeId, user)) {\r\n this.router.navigate(['/users']);\r\n return of(null);\r\n }\r\n\r\n return this.userService.getUser(routeId).pipe(\r\n catchError(error => {\r\n this.notify.error(error);\r\n this.router.navigate(['/users']);\r\n return of(null);\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { User } from '../_models/user';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { NotificationService } from './notification.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n baseUrl = environment.apiUrl + 'auth/';\r\n jwtHelper = new JwtHelperService();\r\n decodedToken: any;\r\n currentUser: User;\r\n\r\n adminUser: User;\r\n clientUser: User;\r\n serviceManUser: User;\r\n tollDistributerUser: User;\r\n\r\n adminDecodedToken: any;\r\n clientDecodedToken: any;\r\n serviceManDecodedToken: any;\r\n tollDistributerDecodedToken: any;\r\n\r\n constructor(\r\n private http: HttpClient, \r\n private router: Router, \r\n private notify: NotificationService\r\n ) { }\r\n\r\n loginByClientId(clientId: number,adminUserName:string,adminId:number,ipAddress:string) {\r\n return this.http.get(this.baseUrl + `login/clients/${clientId}`,\r\n {\r\n params: {\r\n aditionalParams: JSON.stringify({ adminUserName, adminId, ipAddress })\r\n }\r\n }\r\n\r\n ).pipe(\r\n map(response => {\r\n if (response?.token === undefined || response?.token === null) {\r\n return;\r\n }\r\n\r\n this.initLocalStorage({ user: response.user, token: response.token });\r\n this.initDecodedTokenByRole(response.token);\r\n\r\n const routePath = this.getUrlByRole(response.user.role),\r\n urlTree = this.router.createUrlTree([routePath]),\r\n url = this.router.serializeUrl(urlTree);\r\n\r\n window.open(url, '_blank');\r\n\r\n this.notify.success('Uspešno logovanje');\r\n })\r\n );\r\n }\r\n\r\n initUser(user): User {\r\n if (user.role === 0) {\r\n this.adminUser = user;\r\n return this.adminUser;\r\n }\r\n\r\n if (user.role === 1) {\r\n this.clientUser = user;\r\n return this.clientUser;\r\n }\r\n\r\n if (user.role === 2) {\r\n this.serviceManUser = user;\r\n return this.serviceManUser;\r\n }\r\n\r\n if (user.role === 3) {\r\n this.tollDistributerUser = user;\r\n return this.tollDistributerUser;\r\n }\r\n }\r\n\r\n getUserRoleAlias({ role }: { role: number }): string {\r\n const userRoleAlias = {\r\n 0: 'admin',\r\n 1: 'client',\r\n 2: 'serviceMan',\r\n 3: 'srbToll/distributer/clients'\r\n };\r\n return userRoleAlias[role];\r\n }\r\n\r\n initDecodedTokenByRole({ role, token }): void {\r\n if (role === 0) {\r\n this.adminDecodedToken = this.jwtHelper.decodeToken(token);\r\n }\r\n\r\n if (role === 1) {\r\n this.clientDecodedToken = this.jwtHelper.decodeToken(token);\r\n }\r\n\r\n if (role === 2) {\r\n this.serviceManDecodedToken = this.jwtHelper.decodeToken(token);\r\n }\r\n\r\n if (role === 3) {\r\n this.tollDistributerDecodedToken = this.jwtHelper.decodeToken(token);\r\n }\r\n }\r\n\r\n initLocalStorage({ user, token }): void {\r\n const roleAlias = this.getUserRoleAlias({ role: user.role }),\r\n userStr = JSON.stringify(user);\r\n localStorage.setItem(`${roleAlias}-token`, token);\r\n localStorage.setItem(`${roleAlias}-user`, userStr);\r\n localStorage.setItem(`${roleAlias}-map`, 'false');\r\n }\r\n\r\n getUrlByRole(role: number): string {\r\n const url = {\r\n 0: '/companies',\r\n 1: '/vehicles',\r\n 2: '/freeModems',\r\n 3: `/srbToll/distributer/clients`\r\n };\r\n return url[role];\r\n }\r\n\r\n navigateUrlByRole(role: number): void {\r\n this.router.navigateByUrl(this.getUrlByRole(role));\r\n this.notify.success('Uspešno logovanje');\r\n }\r\n\r\n loginSystem(input,IpAddress:string) {\r\n input.IpAddress = IpAddress;\r\n console.log(input);\r\n \r\n return this.http.post(this.baseUrl + `login`, input)\r\n .pipe(\r\n map((response: any) => {\r\n const user = this.initUser(response.user);\r\n\r\n this.initLocalStorage({ user, token: response.token});\r\n this.initDecodedTokenByRole({ role: user.role, token: response.token });\r\n \r\n this.navigateUrlByRole(user.role);\r\n\r\n return user;\r\n })\r\n )\r\n }\r\n\r\n getAdminUser(): User {\r\n const userRoleAlias = this.getUserRoleAlias({ role: 0 }),\r\n userStr = localStorage.getItem(`${userRoleAlias}-user`);\r\n this.adminUser = JSON.parse(userStr);\r\n return this.adminUser;\r\n }\r\n\r\n getClientUser(): User {\r\n const userRoleAlias = this.getUserRoleAlias({ role: 1 }),\r\n userStr = localStorage.getItem(`${userRoleAlias}-user`);\r\n this.clientUser = JSON.parse(userStr);\r\n return this.clientUser;\r\n }\r\n\r\n getServiceManUser(): User {\r\n const userRoleAlias = this.getUserRoleAlias({ role: 2 }),\r\n userStr = localStorage.getItem(`${userRoleAlias}-user`);\r\n this.serviceManUser = JSON.parse(userStr);\r\n return this.serviceManUser;\r\n }\r\n\r\n getTollDistributerUser(): User {\r\n const userRoleAlias = this.getUserRoleAlias({ role: 3 }),\r\n userStr = localStorage.getItem(`${userRoleAlias}-user`);\r\n this.serviceManUser = JSON.parse(userStr);\r\n return this.serviceManUser;\r\n }\r\n\r\n login(model: any) {\r\n return this.http.post(this.baseUrl + 'login', model).pipe(\r\n map((response: any) => {\r\n const user = response;\r\n if (user) {\r\n localStorage.setItem('token', user.token);\r\n localStorage.setItem('user', JSON.stringify(user.user));\r\n localStorage.setItem('map', 'false');\r\n\r\n this.decodedToken = this.jwtHelper.decodeToken(user.token);\r\n this.currentUser = user.user;\r\n }\r\n })\r\n );\r\n }\r\n\r\n isLoggedInAdmin(): boolean {\r\n const roleAlias = this.getUserRoleAlias({ role: 0 }),\r\n token = localStorage.getItem(`${roleAlias}-token`);\r\n return !this.jwtHelper.isTokenExpired(token);\r\n }\r\n\r\n isLoggedInClient(): boolean {\r\n const roleAlias = this.getUserRoleAlias({ role: 1 }),\r\n token = localStorage.getItem(`${roleAlias}-token`);\r\n return !this.jwtHelper.isTokenExpired(token);\r\n }\r\n\r\n isLoggedInServiceMan(): boolean {\r\n const roleAlias = this.getUserRoleAlias({ role: 2 }),\r\n token = localStorage.getItem(`${roleAlias}-token`);\r\n return !this.jwtHelper.isTokenExpired(token);\r\n }\r\n\r\n isLoggedInTollDistributer(): boolean {\r\n const roleAlias = this.getUserRoleAlias({ role: 3 }),\r\n token = localStorage.getItem(`${roleAlias}-token`);\r\n return !this.jwtHelper.isTokenExpired(token);\r\n }\r\n\r\n register(user: User) {\r\n return this.http.post(this.baseUrl + 'register', user);\r\n }\r\n\r\n getCurrentUser() {\r\n const strUser = localStorage.getItem('user');\r\n this.currentUser = JSON.parse(strUser);\r\n return this.currentUser;\r\n }\r\n\r\n loggedIn() {\r\n const token = localStorage.getItem('token');\r\n return !this.jwtHelper.isTokenExpired(token);\r\n }\r\n\r\n sendRequestForChangePassword(model: any) {\r\n return this.http.post(this.baseUrl + 'forgotPassword', model);\r\n }\r\n\r\n checkToken(model: any) {\r\n return this.http.post(this.baseUrl + 'checkToken', model);\r\n }\r\n\r\n changePassword(model: any) {\r\n return this.http.post(this.baseUrl + 'changePass', model);\r\n }\r\n\r\n getCurrentClient(id: number) {\r\n return this.http.get(this.baseUrl + 'getClient/' + id);\r\n }\r\n getIPAddress()\r\n {\r\n return this.http.get(\"https://api.ipify.org/?format=json\") \r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { environment } from 'src/environments/environment';\r\nimport { UserFinance } from \"../_models/userFinance\";\r\nimport { ItemFinance } from \"../_models/itemFinance\";\r\nimport { DocumentNumbering } from \"../_models/documentNumbering\";\r\nimport { BehaviorSubject } from \"rxjs/internal/BehaviorSubject\";\r\nimport { AccountItem } from \"../_models/accountItems\";\r\nimport { Account } from \"../_models/account\";\r\nimport { Exchangerate } from \"../_models/exchangerate\";\r\nimport { Invoices } from \"../_models/invoices\";\r\nimport { AccountStatement } from \"../_models/accountStatemet\";\r\nimport { BankStatementItem } from \"../_models/bankStatementItem\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GenetarePdfForm } from \"../_models/generatePdfForm\";\r\nimport { FinancialAccount } from \"../_models/financial-account\";\r\nimport { OpenIntemTableData } from \"../_models/open-item-tabel-data\";\r\nimport { BookkeepingClients } from \"../_models/bookkeeping-clients\";\r\n\r\n\r\nimport { LanguageType } from \"../_models/financemailwarning\";\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: `root`\r\n})\r\n\r\nexport class FinanceService {\r\n \r\n baseUrl = environment.apiUrl;\r\n private itemData = new BehaviorSubject([]);\r\n currentData = this.itemData.asObservable();\r\n private dateData = new BehaviorSubject([]);\r\n currentDataDate = this.dateData.asObservable();\r\n private datePrices = new BehaviorSubject([]);\r\n currentDataPrices = this.datePrices.asObservable();\r\n \r\n\r\n\r\n private invoiceSubject = new BehaviorSubject({});\r\n invoiceData =this.invoiceSubject.asObservable();\r\n\r\n private invoiceIdSubject = new BehaviorSubject(null);\r\n invoiceId =this.invoiceIdSubject.asObservable();\r\n\r\n constructor(private http: HttpClient) {}\r\n\r\n sendInvoiceID(id: number,print: boolean) {\r\n this.invoiceIdSubject.next({id: id, print: print});\r\n \r\n }\r\n sendInvoiceToDisplay(account: any) {\r\n this.invoiceSubject.next(account);\r\n \r\n }\r\n\r\n\r\n\r\n addUser(user: UserFinance) {\r\n \r\n return this.http.post(this.baseUrl + 'finance/add', user);\r\n \r\n }\r\n addItem(item:ItemFinance) {\r\n \r\n return this.http.post(this.baseUrl + 'finance/addItem', item);\r\n \r\n }\r\n getNextPassword(){\r\n return this.http.get(this.baseUrl + 'finance/nextPassword');\r\n }\r\n getAllClients(){\r\n return this.http.get(this.baseUrl + 'finance/bussines-client');\r\n }\r\n getAllItems(){\r\n return this.http.get(this.baseUrl + 'finance/bussines-item');\r\n }\r\n deleteClientFinanceById(id:number){\r\n return this.http.delete(this.baseUrl + `finance/${id}`);\r\n }\r\n deleteItemById(id:number){\r\n return this.http.delete(this.baseUrl + `finance/item/${id}`);\r\n }\r\n getClientFinance(id:number){\r\n return this.http.get(this.baseUrl + `finance/client-finance/${id}`);\r\n }\r\n getItemFinance(id:number){\r\n return this.http.get(this.baseUrl + `finance/item-finance/${id}`);\r\n }\r\n editUser(user: UserFinance,id:number) {\r\n \r\n return this.http.put(this.baseUrl + `finance/edit/${id}`, user); \r\n }\r\n editItem(item: ItemFinance,id:number) {\r\n \r\n return this.http.put(this.baseUrl + `finance/edit-item/${id}`, item); \r\n }\r\n editDocument(document: DocumentNumbering,id:number) {\r\n \r\n return this.http.put(this.baseUrl + `finance/edit-document/${id}`, document); \r\n }\r\n addDocument(document:DocumentNumbering) {\r\n\r\n return this.http.post(this.baseUrl + 'finance/addDocument', document); \r\n }\r\n addAccount(account:Account){\r\n return this.http.post(this.baseUrl + 'finance/addAccountItem', account);\r\n }\r\n\r\n getNextPasswordDocumentation(){\r\n return this.http.get(this.baseUrl + 'finance/nextPasswordDocument');\r\n }\r\n getAllDocuments(){\r\n return this.http.get(this.baseUrl + 'finance/all-documents');\r\n }\r\n deleteDocumentById(id:number){\r\n return this.http.delete(this.baseUrl + `finance/delete-document/${id}`);\r\n }\r\n getDocument(id:number){\r\n return this.http.get(this.baseUrl + `finance/document/${id}`);\r\n }\r\n sendItem(data: any[]) {\r\n this.itemData.next(data);\r\n \r\n }\r\n sendDate(data: any[]) {\r\n this.dateData.next(data);\r\n }\r\n sendPrices(data: any[]) {\r\n this.datePrices.next(data);\r\n \r\n }\r\n deleteAccount(itemId:number){\r\n return this.http.delete(this.baseUrl + `finance/deleteAccount/${itemId}`);\r\n }\r\n addExchangeRate(ex:Exchangerate){\r\n return this.http.post(this.baseUrl + 'finance/addExchangerate', ex);\r\n }\r\n getAllExchangerate(){\r\n return this.http.get(this.baseUrl + 'finance/all-exchangerate');\r\n }\r\n getAllAccounts(){\r\n return this.http.get(this.baseUrl + 'finance/all-accounts');\r\n }\r\n \r\n getClientsListForGpsClients(){\r\n return this.http.get(this.baseUrl + 'finance/bussines-client-for-gps-clients');\r\n }\r\n getClientsByPib(pib:string){\r\n return this.http.get(this.baseUrl + `finance/get-bussines-client-by-pib/${pib}`);\r\n }\r\n exportExcelById(id: number) {\r\n return this.http.get(this.baseUrl + `finance/exportExcel/${id}`);\r\n }\r\n exportAccountsExcel(object:any) {\r\n return this.http.post(this.baseUrl + `finance/exportAccountsExcel`,object);\r\n } \r\n // getAllItemsByAccountId(customerId:number,accountId:number){\r\n // return this.http.get(this.baseUrl + `finance/items/${customerId}/${accountId}`);\r\n // }\r\n createGeneratePdfForm(pdfForm:any){\r\n return this.http.post(this.baseUrl + 'finance/addGeneratePdfForm',pdfForm);\r\n }\r\n getGeneratePdf(){\r\n return this.http.get(this.baseUrl + 'finance/generatePdfForm');\r\n }\r\n exportClientsExcel(object:any) {\r\n return this.http.post(this.baseUrl + `finance/exportClientsExcel`,object);\r\n } \r\n getTaxRates(){\r\n return this.http.get(this.baseUrl + `finance/taxRates`);\r\n } \r\n getInvoiceTypes(){\r\n return this.http.get(this.baseUrl + `finance/invoice-type-info`);\r\n } \r\n getInvoicePeriodCodesInfo(){\r\n return this.http.get(this.baseUrl + `finance/invoice-period-codes-info`);\r\n } \r\n getTaxCodesBasis(){\r\n return this.http.get(this.baseUrl + `finance/tax-codes-basis`);\r\n } \r\n addFinancialAccounts(financialAccounts:FinancialAccount[]) {\r\n return this.http.post(this.baseUrl + 'finance/addEditFinancialAccounts', financialAccounts);\r\n } \r\n getFinancialAccounts() {\r\n return this.http.get(this.baseUrl + 'finance/getFinancialAccounts');\r\n } \r\n getInvoiceDataByAccountId(invoiceId:number){\r\n return this.http.get(this.baseUrl + `finance/invoiceData/${invoiceId}`);\r\n }\r\n getInvoiceDataForEditByAccountId(invoiceId:number){\r\n return this.http.get(this.baseUrl + `finance/getInvoiceDataForEdit/${invoiceId}`);\r\n }\r\n editInvoice(account:Account,invoiceId:number){\r\n return this.http.post(this.baseUrl + `finance/editInvoicData/${invoiceId}`, account);\r\n }\r\n sendInvoiceToEInvoiceAPI(invoiceId:number){\r\n return this.http.get(this.baseUrl + `finance/sendInvoiceToApi/${invoiceId}`);\r\n }\r\n getInvoiceDocumentReference(){\r\n return this.http.get(this.baseUrl + `finance/invoice-document-reference`);\r\n }\r\n addNewFile(xmldata: FormData) { \r\n return this.http.post(this.baseUrl + 'finance/addNewFile', xmldata); \r\n }\r\n getAllBankStatement(){\r\n return this.http.get(this.baseUrl + 'finance/all-bank-statement');\r\n }\r\n getAllBankStatementItem(){\r\n return this.http.get(this.baseUrl + 'finance/all-bank-statement-item');\r\n }\r\n getBankStatementItem(){\r\n return this.http.get(this.baseUrl + 'finance/bank-statement');\r\n }\r\n addNewFileTxt(xmldata: FormData) { \r\n return this.http.post(this.baseUrl + 'finance/addNewFileTxt', xmldata); \r\n }\r\n\r\n\r\n sendInvoiceToEmail(invoiceId:number){\r\n \r\n return this.http.get(this.baseUrl + `finance/sendInvoiceToEmail/${invoiceId}`);\r\n }\r\n getAllBankStatementItemById(id:number){\r\n return this.http.get(this.baseUrl + `finance/bank-statement-items-id/${id}`);\r\n }\r\n deleteBankStatement(){\r\n return this.http.delete(this.baseUrl + `finance/bank-statement-delete`);\r\n }\r\n editBankItem(id:number,name: number){ \r\n return this.http.put(this.baseUrl + `finance/edit-bank-statement/${id}`,name); \r\n }\r\n \r\n getBookkeepingOpenItemsTableData(filter:any){\r\n return this.http.get(this.baseUrl + 'finance/open-items-data', {\r\n params: {\r\n filter: JSON.stringify(filter || {})\r\n }\r\n }\r\n );\r\n }\r\n getBookkeepingOpenItemsDetailView(filter:any){\r\n return this.http.get(this.baseUrl + 'finance/open-items-data-detail-view', {\r\n params: {\r\n filter: JSON.stringify(filter || {})\r\n }\r\n }\r\n );\r\n }\r\n getBookkeepingClientsTableData(filter:any){\r\n return this.http.get(this.baseUrl + 'finance/bookkeeping-clients-data', {\r\n params: {\r\n filter: JSON.stringify(filter || {})\r\n }\r\n }\r\n );\r\n }\r\n getBookkeepingClientsDetailView(filter:any){\r\n return this.http.get(this.baseUrl + 'finance/bookkeeping-clients-detail-view', {\r\n params: {\r\n filter: JSON.stringify(filter || {})\r\n }\r\n }\r\n );\r\n }\r\n getBankStatementById(id:number){\r\n return this.http.get(this.baseUrl + `finance/bank-statement-id/${id}`);\r\n }\r\n exportBankStatementExcel(id:number) {\r\n return this.http.get(this.baseUrl + `finance/exportBankStatementExcel/${id}`);\r\n } \r\n exportBankStatementPdf(id:number) {\r\n return this.http.get(this.baseUrl + `finance/exportBankStatementPdf/${id}`);\r\n } \r\n deleteAttachment(id: number) {\r\n return this.http.delete(this.baseUrl + `finance/delete-invoice-attachment/${id}`);\r\n }\r\n downloadAttachment(id: number) {\r\n return this.http.get(this.baseUrl + `finance/download-invoice-attachment/${id}`, { responseType: 'arraybuffer' as 'json' });\r\n }\r\n uploadAttachment(formData:any){\r\n return this.http.post(this.baseUrl + `finance/upload-invoice-attachment`, formData, {\r\n headers: this._fileHttpHeaders(),\r\n });\r\n }\r\n private _fileHttpHeaders(): HttpHeaders {\r\n const headers = new HttpHeaders();\r\n headers.append('Content-Type', 'multipart/form-data');\r\n headers.append('Accept', 'application/json');\r\n return headers;\r\n }\r\n getBankBalance(){\r\n return this.http.get(this.baseUrl + `finance/all-bankBalance`);\r\n }\r\n getBankBalanceByDate(date:Date){\r\n return this.http.get(this.baseUrl + `finance/all-bankBalance-date/${date}`);\r\n }\r\n addEmailText(emailText:any) { \r\n \r\n return this.http.post(this.baseUrl + 'finance/addEditEmailText', emailText); \r\n }\r\n getFinanceEmailText(type:LanguageType){\r\n return this.http.get(this.baseUrl + `finance/language/${type}`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { UntypedFormGroup, UntypedFormControl, FormGroupDirective, NgForm } from '@angular/forms';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class MyErrorStateMatcher implements ErrorStateMatcher {\r\n isErrorState(control: UntypedFormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(control && control.invalid && (control.dirty || control.touched || isSubmitted));\r\n }\r\n}\r\n\r\nexport class FormGroupValidationService {\r\n\r\nconstructor() { }\r\n\r\nvalidateAllFormFields(formGroup: UntypedFormGroup) {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof UntypedFormControl) {\r\n control.markAsTouched();\r\n } else if (control instanceof UntypedFormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n}\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\nimport { VehiclePosition } from '../_models/vehiclePosition';\r\nimport { Vehicle } from '../_models/vehicle';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MapService {\r\n baseUrl = environment.apiUrl;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getLastPosition(vehicleId: number): Observable {\r\n return this.http.get(this.baseUrl + 'maps/' + vehicleId);\r\n }\r\n\r\n getLastPositionByImei(imei: string): Observable {\r\n return this.http.get(this.baseUrl + 'maps/lastPositionByImei/' + imei);\r\n }\r\n\r\n getVehicles(date: Date): Observable {\r\n return this.http.get(this.baseUrl + 'maps/vehicles/' + new Date(date).toJSON());\r\n }\r\n\r\n getPositions(date: Date, imei: string): Observable {\r\n return this.http.get(this.baseUrl + 'maps/positions/' + new Date(date).toJSON() + '/' + imei);\r\n }\r\n\r\n getFromToPositions({ dateFrom, dateTo, imei, minVelocity }): Observable {\r\n return this.http.get(this.baseUrl + `maps/positions`, {\r\n params: {\r\n searchOptions: JSON.stringify({\r\n dayFrom: dateFrom,\r\n dayTo: dateTo,\r\n imei,\r\n minVelocity\r\n })\r\n }\r\n });\r\n }\r\n\r\n getVehiclePositions(clientId: number): Observable {\r\n return this.http.get(this.baseUrl + 'maps/vehiclePositions/' + clientId);\r\n }\r\n\r\n getVehiclePositions_NEW({ clientId, userId }): Observable {\r\n return this.http.get(this.baseUrl + `maps/vehiclePositions/${clientId}/users/${userId}`);\r\n }\r\n\r\n getSharedPositionClientsData() {\r\n return this.http.get(this.baseUrl + `maps/sharedPositions/data/clients`);\r\n }\r\n\r\n getSharedPositionVehiclesData() {\r\n return this.http.get(this.baseUrl + `maps/sharedPositions/data/vehicles`);\r\n }\r\n\r\n getSharedPositionByVehicleId({ clientId, vehicleId, email }) {\r\n return this.http.get(this.baseUrl + `maps/vehicles/${vehicleId}/sharedPosition`, {\r\n params: {\r\n searchOptions: JSON.stringify({ clientId, vehicleId, email })\r\n }\r\n });\r\n }\r\n\r\n getVehiclePositionsOSM(clientId: number): Observable {\r\n return this.http.get(this.baseUrl + 'maps/vehiclePositionsOSM/' + clientId);\r\n }\r\n\r\n getVehiclePositionsOSM_NEW({ clientId, userId }): Observable {\r\n return this.http.get(this.baseUrl + `maps/vehiclePositionsOSM/${clientId}/users/${userId}`);\r\n }\r\n\r\n getGroupVehiclePositions(clientId: number, groupId: number): Observable {\r\n return this.http.get(this.baseUrl + 'maps/vehicleGroupPositions/' + clientId + '/' + groupId);\r\n }\r\n\r\n getVehicleGroupPositions_NEW({ clientId, groupId, userId }): Observable {\r\n // this will be deleted\r\n return this.http.get(this.baseUrl + `maps/vehicleGroupPositions/${clientId}/${groupId}/users/${userId}`);\r\n }\r\n\r\n getPosiionWithAddress(modemType: number, imei: string): Observable {\r\n return this.http.get(this.baseUrl + 'maps/positionWithAddress/' + modemType + '/' + imei);\r\n }\r\n\r\n getPositionAddresses(positions: any[], fromIndex: number): Observable {\r\n return this.http.post(this.baseUrl + 'maps/positions/addresses/' + fromIndex, positions);\r\n }\r\n\r\n getLogGreska(imei: string): Observable {\r\n return this.http.get(this.baseUrl + 'maps/log/greska/' + imei);\r\n }\r\n\r\n getLogSpisak(imei: string): Observable {\r\n return this.http.get(this.baseUrl + 'maps/log/spisak/' + imei);\r\n }\r\n getLogsGreske(imei: string, number: number): Observable {\r\n return this.http.get(this.baseUrl + 'maps/logs/greske/' + imei + '/' + number);\r\n }\r\n\r\n getLogsSpiskovi(imei: string, number: number): Observable {\r\n return this.http.get(this.baseUrl + 'maps/logs/spiskovi/' + imei + '/' + number);\r\n }\r\n\r\n getAllVehiclePositions(): Observable {\r\n return this.http.get(this.baseUrl + 'maps/allVehiclePositions');\r\n }\r\n\r\n getAddressFromHereApi({ longitude, latitude }): Observable {\r\n const url = `https://revgeocode.search.hereapi.com/v1/revgeocode?at=${longitude}%2C${latitude}&lang=sr-Latn-CS&apiKey=tHMdcYbXoZ_0P2ag0SB-OLwDmaeE5Un9r8HLXnf5k3I`;\r\n return this.http.get(url);\r\n }\r\n\r\n\r\n private cache = new Map();\r\n\r\n getAddressFromGeoapify({ lat, lon }){\r\n const url = `https://api.geoapify.com/v1/geocode/reverse?lat=${lat}&lon=${lon}&apiKey=48fc4a70434e4c2c90b779101a2ee732`\r\n if (this.cache.has(url)) {\r\n return of(this.cache.get(url));\r\n } \r\n else {\r\n return this.http.get(url).pipe(\r\n map(response => {\r\n // Cache the response\r\n this.cache.set(url, response);\r\n return response;\r\n }),\r\n catchError(error => {\r\n console.error('Error fetching data:', error);\r\n throw error;\r\n })\r\n );\r\n }\r\n }\r\n\r\n getLastPositionImei(imei: string): Observable {\r\n return this.http.get(this.baseUrl + 'maps/lastPosition/' + imei);\r\n }\r\n // getModemParams(imei: string): Observable {\r\n // return this.http.get(this.baseUrl + 'maps/modem-parameter-show/'+imei);\r\n // }\r\n\r\n getSharedPositionsByCLientId({ clientId, filter }) {\r\n return this.http.get(this.baseUrl + `maps/clients/${clientId}/sharedPositions`, {\r\n params: {\r\n searchOptions: JSON.stringify(filter)\r\n }\r\n });\r\n }\r\n\r\n deleteSharedPositionByFilter({ clientId, filter }) {\r\n return this.http.delete(this.baseUrl + `maps/clients/${clientId}/sharedPositions`, {\r\n params: {\r\n searchOptions: JSON.stringify(filter)\r\n }\r\n }); \r\n }\r\n\r\n createSharedPositionByClientId({ clientId, input }) {\r\n return this.http.post(this.baseUrl + `maps/clients/${clientId}/sharedPositions`, input);\r\n }\r\n\r\n updateSharedPositionByClientId({ clientId, input }) {\r\n return this.http.put(this.baseUrl + `maps/clients/${clientId}/sharedPositions`, input);\r\n }\r\n getVehiclePositions_NEW_V2({ clientId, userId }): Observable {\r\n return this.http.get(this.baseUrl + `maps/vehiclePositionsNewV2/${clientId}/users/${userId}`);\r\n }\r\n getVehiclePositionsOSM_NEW_V2({ clientId, userId }): Observable {\r\n return this.http.get(this.baseUrl + `maps/vehiclePositionsOSMNewV2/${clientId}/users/${userId}`);\r\n }\r\n getVehicleGroupPositions_NEW_V2({ clientId, groupId, userId }): Observable {\r\n // this will be deleted\r\n return this.http.get(this.baseUrl + `maps/vehicleGroupPositionsNewV2/${clientId}/${groupId}/users/${userId}`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\ndeclare const $: any;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationService {\r\n\r\nconstructor() { }\r\n\r\nsuccess(message: string) {\r\n this.showNotification('success', message);\r\n}\r\n\r\nerror(message: string) {\r\n this.showNotification('danger', message);\r\n}\r\n\r\nwarning(message: string) {\r\n this.showNotification('warning', message);\r\n}\r\n\r\nmessage(message: string) {\r\n this.showNotification('info', message);\r\n}\r\n\r\nprivate showNotification(type: any, message: any) {\r\n $.notify({\r\n icon: 'notifications',\r\n message: message\r\n }, {\r\n type: type,\r\n timer: 3000,\r\n placement: {\r\n from: 'bottom',\r\n align: 'right'\r\n },\r\n template: '
' +\r\n '' +\r\n 'notifications ' +\r\n '{1} ' +\r\n '{2}' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '' +\r\n '
'\r\n });\r\n}\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { User } from '../_models/user';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ActionLog } from '../_models/actionLog';\r\nimport { ActivityLog } from '../_models/activityLog';\r\nimport { CompanyGroup } from '../_models/companyGroup';\r\nimport { UserActivityLog } from '../_models/useractivitylog.ts';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService {\r\n baseUrl = environment.apiUrl;\r\n\r\nconstructor(private http: HttpClient) { }\r\n\r\ngetUsers(): Observable {\r\n return this.http.get(this.baseUrl + 'users');\r\n}\r\n\r\ngetUsersWithCompanies(): Observable {\r\n return this.http.get(this.baseUrl + 'users/withCompanies');\r\n}\r\n\r\naddUser(user: User) {\r\n return this.http.post(this.baseUrl + 'users/add', user);\r\n}\r\n\r\naddUserWithVehicles(user: User) {\r\n return this.http.post(this.baseUrl + 'users/addWithVehicles', user);\r\n}\r\n\r\ngetClientUsers(): Observable {\r\n return this.http.get(this.baseUrl + 'users/clients');\r\n}\r\n\r\ngetUser(id: number): Observable {\r\n return this.http.get(this.baseUrl + 'users/' + id);\r\n}\r\n\r\ngetSubuser(id: number): Observable {\r\n return this.http.get(this.baseUrl + 'users/subuser/' + id);\r\n}\r\n\r\nupdateUser(user: User) {\r\n return this.http.put(this.baseUrl + 'users/' + user.id, user);\r\n}\r\n\r\nupdateSubuser(subuser: User) {\r\n return this.http.put(this.baseUrl + 'users/subuser/' + subuser.id, subuser);\r\n}\r\n\r\nchangePassword(model: any) {\r\n return this.http.post(this.baseUrl + 'users/changePassword', model);\r\n}\r\nactivateUser(id: number,currentUserId) {\r\n return this.http.patch(this.baseUrl + 'users/activate/', {id:id,createdBy:currentUserId});\r\n}\r\nremoveUser(id: number,createdBy:number) {\r\n return this.http.delete(this.baseUrl + 'users/remove' ,{\r\n params: {\r\n userInfo: JSON.stringify({id:id,createdBy:createdBy})\r\n }\r\n });\r\n}\r\n\r\nremoveSubuser(id: number) {\r\n return this.http.get(this.baseUrl + 'users/removeSubuser/' + id);\r\n}\r\n\r\nresetPassword(user: User) {\r\n return this.http.post(this.baseUrl + 'users/resetPassword', user);\r\n}\r\n\r\ngetVehiclesForSubuser(id: number): Observable {\r\n return this.http.get(this.baseUrl + 'users/getVehiclesForSubuser/' + id);\r\n}\r\n\r\ngetActionLogsByClientId(activityLog: ActivityLog): Observable {\r\n return this.http.post(this.baseUrl + 'users/actionlogs', activityLog);\r\n}\r\ngetUserByClientId(clientId:number): Observable {\r\n return this.http.get(this.baseUrl + `users/getUserByClientId/${clientId}`);\r\n}\r\ngetClientHistory(username:string): Observable {\r\n return this.http.get(this.baseUrl + `users/clientHistory/${username}`);\r\n}\r\ngetClientsLogsByClientId(id:number):Observable{\r\n return this.http.get(this.baseUrl + `users/clientslogs/${id}`);\r\n}\r\ngetUserActivityLogs(userId:number,epochKey:number):Observable{\r\n return this.http.get(this.baseUrl + `users/clientsacivitylogs/${userId}/${epochKey}`);\r\n}\r\n\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n}\r\n","","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { RouterModule } from '@angular/router';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { JwtModule } from '@auth0/angular-jwt';\r\nimport {NgxImageCompressService} from 'ngx-image-compress';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { CounterComponent } from './counter/counter.component';\r\nimport { FetchDataComponent } from './fetch-data/fetch-data.component';\r\nimport { AppRoutes } from './app.routing';\r\n\r\nimport { SidebarModule } from './layouts/admin/sidebar/sidebar.module';\r\nimport { NavbarModule } from './layouts/admin/navbar/navbar.module';\r\nimport { FooterModule } from './layouts/admin/footer/footer.module';\r\nimport { FixedpluginModule } from './layouts/admin/fixedplugin/fixedplugin.module';\r\n\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatNativeDateModule, MatRippleModule } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatDialogModule, MatDialogRef } from '@angular/material/dialog';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatSliderModule } from '@angular/material/slider';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { DatePipe } from '@angular/common'\r\nimport { AdminLayoutComponent } from './layouts/admin/admin-layout.component';\r\nimport { AuthLayoutComponent } from './layouts/auth/auth-layout.component';\r\nimport { NotificationService } from './_services/notification.service';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { AuthService } from './_services/auth.service';\r\nimport { UserService } from './_services/user.service';\r\nimport { VehiclePositionComponent } from './vehiclePosition/vehiclePosition.component';\r\nimport { VehicleRoutesComponent } from './vehicleRoutes/vehicleRoutes.component';\r\nimport { MapRoutesComponent } from './vehicleRoutes/mapRoutes/mapRoutes.component';\r\nimport { UserEditResolver } from './_resolvers/user-edit.resolver';\r\nimport { PositionRouteResolver } from './_resolvers/positions-route.resolver';\r\nimport { ForgotPassDialogComponent } from './login/forgot-pass-dialog/forgot-pass-dialog.component';\r\nimport { ForgotPassChangeComponent } from './forgot-pass-change/forgot-pass-change.component';\r\nimport { PassTokenResolver } from './_resolvers/pass-token.resolver';\r\nimport { ChartsModule } from 'ng2-charts';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { LogListComponent } from './log-list/log-list.component';\r\n\r\nimport { HighchartsChartModule } from 'highcharts-angular';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { ClientLayoutComponent } from './layouts/client/client-layout.component';\r\nimport { HeaderComponent } from './layouts/client/component/header/header.component';\r\nimport { SidebarComponent } from './layouts/client/component/sidebar/sidebar.component';\r\nimport { ToggleSidebarComponent } from './layouts/client/component/toggle-sidebar/toggle-sidebar.component';\r\nimport { NgApexchartsModule } from 'ng-apexcharts';\r\nimport { ConfirmationDialogComponent } from 'src/app/shared/confirmDialog/confirmDialog.component';\r\nimport { ErrorMessageDialogComponent } from 'src/app/shared/errorMessageDialog/errorMessageDialog.component';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { ServiceManLayoutComponent } from './layouts/serviceMan/serviceMan-layout.component';\r\nimport { ProgressLoaderModule } from './shared/progressLoader/progressLoader.module';\r\nimport { ChangeDialogComponent } from './login/changeDialog/changeDialog.component';\r\nimport { AddClientFinanceComponent } from './pages/admin/add-client-finance/add-client-finance.component';\r\nimport { TollDistributerLayoutComponent } from './layouts/tollDistributerLayout/tollDistributerLayout.component';\r\nimport { NavbarServiceService } from './layouts/admin/navbar-service.service';\r\nimport { InvoiceSendOptionsComponent } from './pages/admin/display-finance-account/invoice-send-options/invoice-send-options.component';\r\n\r\n\r\nexport function tokenGetter() {\r\n return localStorage.getItem('admin-token') || localStorage.getItem('client-token') || localStorage.getItem('serviceMan-token');\r\n}\r\n\r\n@NgModule({\r\n exports: [\r\n MatAutocompleteModule,\r\n MatButtonModule,\r\n MatButtonToggleModule,\r\n MatCardModule,\r\n MatCheckboxModule,\r\n MatChipsModule,\r\n MatStepperModule,\r\n MatDatepickerModule,\r\n MatDialogModule,\r\n MatExpansionModule,\r\n MatGridListModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n MatMenuModule,\r\n MatPaginatorModule,\r\n MatProgressBarModule,\r\n MatProgressSpinnerModule,\r\n MatRadioModule,\r\n MatRippleModule,\r\n MatSelectModule,\r\n MatSidenavModule,\r\n MatSliderModule,\r\n MatSlideToggleModule,\r\n MatSnackBarModule,\r\n MatSortModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n MatToolbarModule,\r\n MatTooltipModule\r\n\r\n ]\r\n\r\n})\r\nexport class MaterialModule { }\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomeComponent,\r\n CounterComponent,\r\n FetchDataComponent,\r\n AdminLayoutComponent,\r\n AuthLayoutComponent,\r\n LoginComponent,\r\n VehiclePositionComponent,\r\n VehicleRoutesComponent,\r\n MapRoutesComponent,\r\n ForgotPassDialogComponent,\r\n ForgotPassChangeComponent,\r\n LogListComponent,\r\n ClientLayoutComponent,\r\n ServiceManLayoutComponent,\r\n TollDistributerLayoutComponent,\r\n HeaderComponent,\r\n SidebarComponent,\r\n ToggleSidebarComponent,\r\n ConfirmationDialogComponent,\r\n ErrorMessageDialogComponent,\r\n ChangeDialogComponent,\r\n AddClientFinanceComponent,\r\n InvoiceSendOptionsComponent\r\n \r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),\r\n HttpClientModule,\r\n\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n NgMultiSelectDropDownModule,\r\n RouterModule.forRoot(AppRoutes, { relativeLinkResolution: 'legacy' }),\r\n\r\n MaterialModule,\r\n ProgressLoaderModule,\r\n MatNativeDateModule,\r\n SidebarModule,\r\n NavbarModule,\r\n FooterModule,\r\n FixedpluginModule,\r\n ReactiveFormsModule,\r\n\r\n ChartsModule,\r\n NgxChartsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n HighchartsChartModule,\r\n NgApexchartsModule,\r\n\r\n DragDropModule,\r\n\r\n JwtModule.forRoot({\r\n config: {\r\n tokenGetter: tokenGetter,\r\n whitelistedDomains: ['logimapsgpsapi.azurewebsites.net','localhost:5000'],\r\n blacklistedRoutes: ['logimapsgpsapi.azurewebsites.net/api/auth']\r\n }\r\n })\r\n ],\r\n providers: [\r\n NotificationService,\r\n AuthService,\r\n UserService,\r\n UserEditResolver,\r\n PositionRouteResolver,\r\n PassTokenResolver,\r\n NgxImageCompressService,\r\n DatePipe,\r\n {\r\n provide: MatDialogRef,\r\n useValue: {}\r\n },\r\n NavbarServiceService\r\n ],\r\n bootstrap: [AppComponent],\r\n entryComponents: [\r\n ConfirmationDialogComponent,\r\n ErrorMessageDialogComponent,\r\n ForgotPassDialogComponent,\r\n ChangeDialogComponent\r\n ]\r\n})\r\n\r\n\r\nexport class AppModule { }\r\n","import { Routes } from '@angular/router';\r\n\r\nimport { AdminLayoutComponent } from './layouts/admin/admin-layout.component';\r\nimport { AuthLayoutComponent } from './layouts/auth/auth-layout.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { VehiclePositionComponent } from './vehiclePosition/vehiclePosition.component';\r\nimport { VehicleRoutesComponent } from './vehicleRoutes/vehicleRoutes.component';\r\nimport { MapRoutesComponent } from './vehicleRoutes/mapRoutes/mapRoutes.component';\r\nimport { PositionRouteResolver } from './_resolvers/positions-route.resolver';\r\nimport { ForgotPassChangeComponent } from './forgot-pass-change/forgot-pass-change.component';\r\nimport { PassTokenResolver } from './_resolvers/pass-token.resolver';\r\nimport { ClientLayoutComponent } from './layouts/client/client-layout.component';\r\nimport { AdminGuard } from './_guards/admin.guard';\r\nimport { ClientGuard } from './_guards/client.guard';\r\nimport { ServiceManLayoutComponent } from './layouts/serviceMan/serviceMan-layout.component';\r\nimport { ServiceManGuard } from './_guards/serviceMan.guard';\r\nimport { TollDistributerGuard } from './_guards/tollDistributer.guard';\r\nimport { TollDistributerLayoutComponent } from './layouts/tollDistributerLayout/tollDistributerLayout.component';\r\n\r\n\r\nexport const AppRoutes: Routes = [\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [ServiceManGuard],\r\n component: ServiceManLayoutComponent,\r\n children: [{\r\n path: '',\r\n loadChildren: () => import('src/app/pages/serviceMan/serviceMan.module').then(m => m.ServiceManModule)\r\n }]\r\n },\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [ClientGuard],\r\n component: ClientLayoutComponent,\r\n children: [{\r\n path: '',\r\n loadChildren: () => import('src/app/pages/client/client.module').then(m => m.ClientModule)\r\n }]\r\n },\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [AdminGuard],\r\n component: AdminLayoutComponent,\r\n children: [\r\n {\r\n path: '',\r\n loadChildren: () => import('src/app/pages/admin/admin.module').then(m => m.AdminModule)\r\n }\r\n ]\r\n },\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [TollDistributerGuard],\r\n component: TollDistributerLayoutComponent,\r\n children: [\r\n {\r\n path: '',\r\n loadChildren: () => import('src/app/pages/srbTollDistributer/srbTollDistributer.module').then(m => m.SrbTollDistributersModule)\r\n }\r\n ]\r\n },\r\n {\r\n path: 'unauthorized',\r\n loadChildren: () => import('./unathorizedPages/unathorizedPages.module').then(m => m.UnathorizedPagesModule)\r\n },\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [AdminGuard],\r\n component: AdminLayoutComponent,\r\n children: [{\r\n path: 'vehicle',\r\n children: [\r\n {\r\n path: ':id',\r\n // resolve: { user: UserEditResolver },\r\n component: VehiclePositionComponent\r\n }\r\n ]\r\n }]\r\n },\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [AdminGuard],\r\n component: AdminLayoutComponent,\r\n children: [{\r\n path: 'routes',\r\n children: [\r\n {\r\n path: '',\r\n component: VehicleRoutesComponent\r\n },\r\n {\r\n path: ':date/:id',\r\n resolve: { positions: PositionRouteResolver },\r\n component: MapRoutesComponent\r\n }\r\n ]\r\n }]\r\n },\r\n // {\r\n // path: '',\r\n // runGuardsAndResolvers: 'always',\r\n // canActivate: [AuthGuard],\r\n // component: AdminLayoutComponent,\r\n // children: [{\r\n // path: 'users',\r\n // component: ListUsersComponent\r\n // }]\r\n // },\r\n {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: 'login',\r\n component: LoginComponent\r\n }]\r\n },\r\n {\r\n path: 'password/change',\r\n resolve: { token: PassTokenResolver },\r\n component: ForgotPassChangeComponent\r\n },\r\n {\r\n path: '',\r\n redirectTo: 'dashboard',\r\n pathMatch: 'full',\r\n }\r\n];\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-counter-component',\r\n templateUrl: './counter.component.html'\r\n})\r\nexport class CounterComponent {\r\n public currentCount = 0;\r\n\r\n public incrementCounter() {\r\n this.currentCount++;\r\n }\r\n}\r\n","

Counter

\r\n\r\n

This is a simple example of an Angular component.

\r\n\r\n

Current count: {{ currentCount }}

\r\n\r\n\r\n","import { Component, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-fetch-data',\r\n templateUrl: './fetch-data.component.html'\r\n})\r\nexport class FetchDataComponent {\r\n public forecasts: WeatherForecast[];\r\n\r\n constructor(http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n http.get(baseUrl + 'api/SampleData/WeatherForecasts').subscribe(result => {\r\n this.forecasts = result;\r\n }, error => console.error(error));\r\n }\r\n}\r\n\r\ninterface WeatherForecast {\r\n dateFormatted: string;\r\n temperatureC: number;\r\n temperatureF: number;\r\n summary: string;\r\n}\r\n","

Weather forecast

\r\n\r\n

This component demonstrates fetching data from the server.

\r\n\r\n

Loading...

\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
DateTemp. (C)Temp. (F)Summary
{{ forecast.dateFormatted }}{{ forecast.temperatureC }}{{ forecast.temperatureF }}{{ forecast.summary }}
\r\n","import { Component, OnInit, ElementRef } from '@angular/core';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { NotificationService } from '../_services/notification.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-forgot-pass-change',\r\n templateUrl: './forgot-pass-change.component.html'\r\n})\r\nexport class ForgotPassChangeComponent implements OnInit {\r\n private toggleButton: any;\r\n private sidebarVisible: boolean;\r\n private nativeElement: Node;\r\n password: string;\r\n confirmPassword: string;\r\n model: any = {};\r\n\r\n constructor(public authService: AuthService, private notify: NotificationService, private router: Router, private route: ActivatedRoute,\r\n private element: ElementRef) {\r\n this.nativeElement = element.nativeElement;\r\n this.sidebarVisible = false;\r\n }\r\n\r\n ngOnInit() {\r\n var navbar : HTMLElement = this.element.nativeElement;\r\n this.toggleButton = navbar.getElementsByClassName('navbar-toggle')[0];\r\n const body = document.getElementsByTagName('body')[0];\r\n body.classList.add('login-page');\r\n body.classList.add('off-canvas-sidebar');\r\n const card = document.getElementsByClassName('card')[0];\r\n setTimeout(function() {\r\n // after 1000 ms we add the class animated to the login/register card\r\n card.classList.remove('card-hidden');\r\n }, 700);\r\n}\r\n\r\n changePass(){\r\n if (this.confirm()) {\r\n var tok = this.route.snapshot.queryParamMap.get('token')\r\n this.route.queryParamMap.subscribe(queryParams => {\r\n tok = queryParams.get('token');\r\n });\r\n this.model.token = tok;\r\n this.model.password = this.password;\r\n this.authService.changePassword(this.model).subscribe(() => {\r\n this.notify.success('Uspesno izmenjena sifra');\r\n }, error => {\r\n this.notify.error('Vas zahtev za promenu lozinke je istekao. Posaljite ponovo.')\r\n }, () => {\r\n this.router.navigate(['/login']);\r\n });\r\n } else {\r\n this.notify.error('Lozinke se moraju poklapati')\r\n }\r\n }\r\n\r\n confirm(){\r\n if (this.password === this.confirmPassword) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n sidebarToggle() {\r\n var toggleButton = this.toggleButton;\r\n var body = document.getElementsByTagName('body')[0];\r\n var sidebar = document.getElementsByClassName('navbar-collapse')[0];\r\n if (this.sidebarVisible == false) {\r\n setTimeout(function() {\r\n toggleButton.classList.add('toggled');\r\n }, 500);\r\n body.classList.add('nav-open');\r\n this.sidebarVisible = true;\r\n } else {\r\n this.toggleButton.classList.remove('toggled');\r\n this.sidebarVisible = false;\r\n body.classList.remove('nav-open');\r\n }\r\n }\r\n ngOnDestroy() {\r\n const body = document.getElementsByTagName('body')[0];\r\n body.classList.remove('login-page');\r\n body.classList.remove('off-canvas-sidebar');\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Promena lozinke

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n lock_outline\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n lock_outline\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n})\r\nexport class HomeComponent {\r\n}\r\n","

Hello, world!

\r\n

Welcome to your new single-page application, built with:

\r\n\r\n

To help you get started, we've also set up:

\r\n
    \r\n
  • Client-side navigation. For example, click Counter then Back to return here.
  • \r\n
  • Angular CLI integration. In development mode, there's no need to run ng serve. It runs in the background automatically, so your client-side resources are dynamically built on demand and the page refreshes when you modify any file.
  • \r\n
  • Efficient production builds. In production mode, development-time features are disabled, and your dotnet publish configuration automatically invokes ng build to produce minified, ahead-of-time compiled JavaScript files.
  • \r\n
\r\n

The ClientApp subdirectory is a standard Angular CLI application. If you open a command prompt in that directory, you can run any ng command (e.g., ng test), or use npm to install extra packages into it.

\r\n","import { Component, OnInit, OnDestroy, ViewChild, HostListener, AfterViewInit } from '@angular/core';\r\nimport { Router, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { NavItem, NavItemType } from '../../md/md.module';\r\nimport { Subscription } from 'rxjs/Subscription';\r\nimport { Location, LocationStrategy, PathLocationStrategy, PopStateEvent } from '@angular/common';\r\nimport 'rxjs/add/operator/filter';\r\nimport { NavbarComponent } from './navbar/navbar.component';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\n\r\n\r\n\r\n\r\n\r\ndeclare const $: any;\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './admin-layout.component.html'\r\n})\r\n\r\nexport class AdminLayoutComponent implements OnInit, AfterViewInit {\r\n public navItems: NavItem[];\r\n private _router: Subscription;\r\n private lastPoppedUrl: string;\r\n private yScrollStack: number[] = [];\r\n url: string;\r\n location: Location;\r\n loadFinance:boolean;\r\n\r\n @ViewChild('sidebar') sidebar: any;\r\n @ViewChild(NavbarComponent) navbar: NavbarComponent;\r\n constructor( private router: Router, location: Location ) {\r\n this.location = location;\r\n \r\n }\r\n ngOnInit() {\r\n const elemMainPanel = document.querySelector('.main-panel');\r\n const elemSidebar = document.querySelector('.sidebar .sidebar-wrapper');\r\n this.location.subscribe((ev:PopStateEvent) => {\r\n this.lastPoppedUrl = ev.url;\r\n });\r\n this.router.events.subscribe((event:any) => {\r\n if (event instanceof NavigationStart) {\r\n if (event.url != this.lastPoppedUrl)\r\n this.yScrollStack.push(window.scrollY);\r\n } else if (event instanceof NavigationEnd) {\r\n if (event.url == this.lastPoppedUrl) {\r\n this.lastPoppedUrl = undefined;\r\n window.scrollTo(0, this.yScrollStack.pop());\r\n }\r\n else\r\n window.scrollTo(0, 0);\r\n }\r\n });\r\n \r\n const html = document.getElementsByTagName('html')[0];\r\n if (window.matchMedia(`(min-width: 960px)`).matches && !this.isMac()) {\r\n let ps = new PerfectScrollbar(elemMainPanel);\r\n ps = new PerfectScrollbar(elemSidebar);\r\n html.classList.add('perfect-scrollbar-on');\r\n }\r\n else {\r\n html.classList.add('perfect-scrollbar-off');\r\n }\r\n this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {\r\n // this.navbar.sidebarClose();\r\n });\r\n\r\n this.navItems = [\r\n { type: NavItemType.NavbarLeft, title: 'Dashboard', iconClass: 'fa fa-dashboard' },\r\n {\r\n type: NavItemType.NavbarRight,\r\n title: '',\r\n iconClass: 'fa fa-bell-o',\r\n numNotifications: 5,\r\n dropdownItems: [\r\n { title: 'Notification 1' },\r\n { title: 'Notification 2' },\r\n { title: 'Notification 3' },\r\n { title: 'Notification 4' },\r\n { title: 'Another Notification' }\r\n ]\r\n },\r\n {\r\n type: NavItemType.NavbarRight,\r\n title: '',\r\n iconClass: 'fa fa-list',\r\n\r\n dropdownItems: [\r\n { iconClass: 'pe-7s-mail', title: 'Messages' },\r\n { iconClass: 'pe-7s-help1', title: 'Help Center' },\r\n { iconClass: 'pe-7s-tools', title: 'Settings' },\r\n 'separator',\r\n { iconClass: 'pe-7s-lock', title: 'Lock Screen' },\r\n { iconClass: 'pe-7s-close-circle', title: 'Log Out' }\r\n ]\r\n },\r\n { type: NavItemType.NavbarLeft, title: 'Search', iconClass: 'fa fa-search' },\r\n\r\n { type: NavItemType.NavbarLeft, title: 'Account' },\r\n {\r\n type: NavItemType.NavbarLeft,\r\n title: 'Dropdown',\r\n dropdownItems: [\r\n { title: 'Action' },\r\n { title: 'Another action' },\r\n { title: 'Something' },\r\n { title: 'Another action' },\r\n { title: 'Something' },\r\n 'separator',\r\n { title: 'Separated link' },\r\n ]\r\n },\r\n { type: NavItemType.NavbarLeft, title: 'Log out' }\r\n ];\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.runOnRouteChange();\r\n }\r\n public isMap() {\r\n \r\n if (this.location.prepareExternalUrl(this.location.path()) === '/maps/fullscreen') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n runOnRouteChange(): void {\r\n if (window.matchMedia(`(min-width: 960px)`).matches && !this.isMac()) {\r\n const elemSidebar = document.querySelector('.sidebar .sidebar-wrapper');\r\n const elemMainPanel = document.querySelector('.main-panel');\r\n let ps = new PerfectScrollbar(elemMainPanel);\r\n ps = new PerfectScrollbar(elemSidebar);\r\n ps.update();\r\n }\r\n }\r\n isMac(): boolean {\r\n let bool = false;\r\n if (navigator.platform.toUpperCase().indexOf('MAC') >= 0 || navigator.platform.toUpperCase().indexOf('IPAD') >= 0) {\r\n bool = true;\r\n }\r\n return bool;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\ndeclare const $: any;\r\nconst md: any = {\r\n misc: {\r\n navbar_menu_visible: 0,\r\n active_collapse: true,\r\n disabled_collapse_init: 0,\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-fixedplugin',\r\n templateUrl: './fixedplugin.component.html',\r\n styleUrls: ['./fixedplugin.component.css']\r\n})\r\n\r\nexport class FixedpluginComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n // fixed plugin\r\n const $sidebar = $('.sidebar');\r\n const $sidebar_img_container = $sidebar.find('.sidebar-background');\r\n //\r\n const $full_page = $('.full-page');\r\n //\r\n const $sidebar_responsive = $('body > .navbar-collapse');\r\n const window_width = $(window).width();\r\n\r\n const fixed_plugin_open = $('.sidebar .sidebar-wrapper .nav li.active a p').html();\r\n\r\n if ( window_width > 767 && fixed_plugin_open === 'Dashboard' ) {\r\n if ($('.fixed-plugin .dropdown').hasClass('show-dropdown')) {\r\n $('.fixed-plugin .dropdown').addClass('open');\r\n }\r\n\r\n }\r\n\r\n $('.fixed-plugin a').click(function(event) {\r\n // Alex: if we click on switch, stop propagation of the event,\r\n // so the dropdown will not be hide, otherwise we set the section active\r\n if ($(this).hasClass('switch-trigger')) {\r\n if (event.stopPropagation) {\r\n event.stopPropagation();\r\n } else if (window.event) {\r\n window.event.cancelBubble = true;\r\n }\r\n }\r\n });\r\n\r\n $('.fixed-plugin .active-color span').click(function() {\r\n const $full_page_background = $('.full-page-background');\r\n\r\n $(this).siblings().removeClass('active');\r\n $(this).addClass('active');\r\n const new_color = $(this).data('color');\r\n\r\n if ($sidebar.length !== 0) {\r\n $sidebar.attr('data-color', new_color);\r\n }\r\n\r\n if ($full_page.length !== 0) {\r\n $full_page.attr('filter-color', new_color);\r\n }\r\n\r\n if ($sidebar_responsive.length !== 0) {\r\n $sidebar_responsive.attr('data-color', new_color);\r\n }\r\n });\r\n\r\n $('.fixed-plugin .background-color span').click(function() {\r\n $(this).siblings().removeClass('active');\r\n $(this).addClass('active');\r\n const new_color = $(this).data('color');\r\n\r\n if ($sidebar.length !== 0) {\r\n $sidebar.attr('data-background-color', new_color);\r\n }\r\n });\r\n\r\n $('.fixed-plugin .img-holder').click(function() {\r\n const $full_page_background = $('.full-page-background');\r\n\r\n $(this).parent('li').siblings().removeClass('active');\r\n $(this).parent('li').addClass('active');\r\n\r\n let new_image = $(this).find('img').attr('src');\r\n\r\n if ( $sidebar_img_container.length !== 0 && $('.switch-sidebar-image input:checked').length !== 0 ) {\r\n $sidebar_img_container.fadeOut('fast', function() {\r\n $sidebar_img_container.css('background-image', 'url(\"' + new_image + '\")');\r\n $sidebar_img_container.fadeIn('fast');\r\n });\r\n }\r\n\r\n if ($full_page_background.length !== 0 && $('.switch-sidebar-image input:checked').length !== 0 ) {\r\n const new_image_full_page = $('.fixed-plugin li.active .img-holder').find('img').data('src');\r\n\r\n $full_page_background.fadeOut('fast', function(){\r\n $full_page_background.css('background-image', 'url(\"' + new_image_full_page + '\")');\r\n $full_page_background.fadeIn('fast');\r\n });\r\n }\r\n\r\n if ( $('.switch-sidebar-image input:checked').length === 0 ) {\r\n new_image = $('.fixed-plugin li.active .img-holder').find('img').attr('src');\r\n const new_image_full_page = $('.fixed-plugin li.active .img-holder').find('img').data('src');\r\n\r\n $sidebar_img_container.css('background-image', 'url(\"' + new_image + '\")');\r\n $full_page_background.css('background-image', 'url(\"' + new_image_full_page + '\")');\r\n }\r\n\r\n if ($sidebar_responsive.length !== 0) {\r\n $sidebar_responsive.css('background-image', 'url(\"' + new_image + '\")');\r\n }\r\n });\r\n\r\n $('.switch-sidebar-image input').change(function() {\r\n const $full_page_background = $('.full-page-background');\r\n const $input = $(this);\r\n\r\n if ($input.is(':checked')) {\r\n if ($sidebar_img_container.length !== 0) {\r\n $sidebar_img_container.fadeIn('fast');\r\n $sidebar.attr('data-image', '#');\r\n }\r\n\r\n if ($full_page_background.length !== 0) {\r\n $full_page_background.fadeIn('fast');\r\n $full_page.attr('data-image', '#');\r\n }\r\n\r\n const background_image = true;\r\n } else {\r\n if ($sidebar_img_container.length !== 0) {\r\n $sidebar.removeAttr('data-image');\r\n $sidebar_img_container.fadeOut('fast');\r\n }\r\n\r\n if ($full_page_background.length !== 0) {\r\n $full_page.removeAttr('data-image', '#');\r\n $full_page_background.fadeOut('fast');\r\n }\r\n\r\n const background_image = false;\r\n }\r\n });\r\n\r\n $('.switch-sidebar-mini input').change(function(){\r\n const $body = $('body');\r\n\r\n const $input = $(this);\r\n\r\n if (md.misc.sidebar_mini_active === true) {\r\n $('body').removeClass('sidebar-mini');\r\n md.misc.sidebar_mini_active = false;\r\n\r\n } else {\r\n setTimeout(function(){\r\n $('body').addClass('sidebar-mini');\r\n\r\n $('.sidebar .collapse').css('height', 'auto');\r\n md.misc.sidebar_mini_active = true;\r\n }, 300);\r\n }\r\n\r\n // we simulate the window Resize so the charts will get updated in realtime.\r\n const simulateWindowResize = setInterval(function(){\r\n window.dispatchEvent(new Event('resize'));\r\n }, 180);\r\n\r\n // we stop the simulation of Window Resize after the animations are completed\r\n setTimeout(function(){\r\n clearInterval(simulateWindowResize);\r\n }, 1000);\r\n\r\n });\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FixedpluginComponent } from './fixedplugin.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [FixedpluginComponent],\r\n exports: [FixedpluginComponent]\r\n})\r\nexport class FixedpluginModule { }\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer-cmp',\r\n templateUrl: 'footer.component.html'\r\n})\r\n\r\nexport class FooterComponent {\r\n test: Date = new Date();\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { FooterComponent } from './footer.component';\r\n\r\n@NgModule({\r\n imports: [ RouterModule, CommonModule ],\r\n declarations: [ FooterComponent ],\r\n exports: [ FooterComponent ]\r\n})\r\n\r\nexport class FooterModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NavbarServiceService {\r\n\r\n public navbarSubject = new BehaviorSubject(\"\");\r\n currentNavbarData = this.navbarSubject.asObservable();\r\n\r\n constructor() { }\r\n\r\n setNavbarData(data) {\r\n this.navbarSubject.next(data);\r\n}\r\n}\r\n","import { Component, OnInit, ViewChild, ElementRef, Directive, Renderer2 } from '@angular/core';\r\nimport { Router, ActivatedRoute, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { Subscription } from 'rxjs/Subscription';\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport { NavbarServiceService } from '../navbar-service.service';\r\nimport { ROUTES } from '../sidebar/sidebar.component';\r\nimport { NotificationService } from 'src/app/_services/notification.service';\r\n\r\nconst misc: any = {\r\n navbar_menu_visible: 0,\r\n active_collapse: true,\r\n disabled_collapse_init: 0,\r\n};\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-navbar-cmp',\r\n templateUrl: 'navbar.component.html',\r\n styleUrls: ['navbar.component.css']\r\n})\r\n\r\nexport class NavbarComponent implements OnInit {\r\n private listTitles: any[];\r\n location: Location;\r\n mobile_menu_visible: any = 0;\r\n private nativeElement: Node;\r\n private toggleButton: any;\r\n private sidebarVisible: boolean;\r\n private _router: Subscription;\r\n serviceMan: boolean;\r\n isAnalysis: boolean;\r\n linkInfos;\r\n\r\n @ViewChild('app-navbar-cmp') button: any;\r\n\r\n constructor(location: Location, private renderer: Renderer2, private element: ElementRef, private router: Router,\r\n private authService: AuthService,\r\n private navbarService: NavbarServiceService,\r\n private notify: NotificationService) {\r\n this.location = location;\r\n this.nativeElement = element.nativeElement;\r\n this.sidebarVisible = false;\r\n if (this.authService.getAdminUser()?.role) {\r\n this.serviceMan = true;\r\n }\r\n if (this.router.url === '/analyses') {\r\n this.isAnalysis = true;\r\n }\r\n }\r\n\r\n warning(){\r\n this.notify.warning(\"Kartica u izradi\");\r\n }\r\n minimizeSidebar() {\r\n const body = document.getElementsByTagName('body')[0];\r\n\r\n if (misc.sidebar_mini_active === true) {\r\n body.classList.remove('sidebar-mini');\r\n misc.sidebar_mini_active = false;\r\n\r\n } else {\r\n setTimeout(function () {\r\n body.classList.add('sidebar-mini');\r\n\r\n misc.sidebar_mini_active = true;\r\n }, 300);\r\n }\r\n\r\n // we simulate the window Resize so the charts will get updated in realtime.\r\n const simulateWindowResize = setInterval(function () {\r\n window.dispatchEvent(new Event('resize'));\r\n }, 180);\r\n\r\n // we stop the simulation of Window Resize after the animations are completed\r\n setTimeout(function () {\r\n clearInterval(simulateWindowResize);\r\n }, 1000);\r\n }\r\n hideSidebar() {\r\n const body = document.getElementsByTagName('body')[0];\r\n const sidebar = document.getElementsByClassName('sidebar')[0];\r\n\r\n if (misc.hide_sidebar_active === true) {\r\n setTimeout(function () {\r\n body.classList.remove('hide-sidebar');\r\n misc.hide_sidebar_active = false;\r\n }, 300);\r\n setTimeout(function () {\r\n sidebar.classList.remove('animation');\r\n }, 600);\r\n sidebar.classList.add('animation');\r\n\r\n } else {\r\n setTimeout(function () {\r\n body.classList.add('hide-sidebar');\r\n // $('.sidebar').addClass('animation');\r\n misc.hide_sidebar_active = true;\r\n }, 300);\r\n }\r\n\r\n // we simulate the window Resize so the charts will get updated in realtime.\r\n const simulateWindowResize = setInterval(function () {\r\n window.dispatchEvent(new Event('resize'));\r\n }, 180);\r\n\r\n // we stop the simulation of Window Resize after the animations are completed\r\n setTimeout(function () {\r\n clearInterval(simulateWindowResize);\r\n }, 1000);\r\n }\r\n\r\n ngOnInit() {\r\n this.navbarService.currentNavbarData.subscribe(data => {\r\n \r\n this.linkInfos = data;\r\n });\r\n\r\n\r\n this.linkInfos.map((linkInfo)=>{\r\n \r\n linkInfo.routeInfos.map((routeInfo)=>{\r\n\r\n var arr = this.router.url.split('/');\r\n var pathSplit = routeInfo.path.split('/');\r\n if (arr.length > 1 && arr[1] !== '') {\r\n if(arr[1]===pathSplit[1]){\r\n this.linkInfos = linkInfo;\r\n }\r\n }\r\n\r\n \r\n \r\n if (routeInfo.path === this.router.url && routeInfo.path !== ' '){\r\n this.linkInfos = linkInfo;\r\n \r\n }\r\n \r\n this.router.events.subscribe((e)=>{\r\n \r\n if (e instanceof NavigationEnd){\r\n if (routeInfo.path === e.url && routeInfo.path !== ' '){\r\n this.linkInfos = linkInfo;\r\n }\r\n }\r\n })\r\n }); \r\n })\r\n\r\n this.listTitles = ROUTES.filter(listTitle => listTitle);\r\n\r\n const navbar: HTMLElement = this.element.nativeElement;\r\n const body = document.getElementsByTagName('body')[0];\r\n this.toggleButton = navbar.getElementsByClassName('navbar-toggler')[0];\r\n if (body.classList.contains('sidebar-mini')) {\r\n misc.sidebar_mini_active = true;\r\n }\r\n if (body.classList.contains('hide-sidebar')) {\r\n misc.hide_sidebar_active = true;\r\n }\r\n this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {\r\n // this.sidebarClose();\r\n\r\n const $layer = document.getElementsByClassName('close-layer')[0];\r\n if ($layer) {\r\n $layer.remove();\r\n }\r\n });\r\n }\r\n onResize(event) {\r\n if ($(window).width() > 991) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n sidebarOpen() {\r\n var $toggle = document.getElementsByClassName('navbar-toggler')[0];\r\n const toggleButton = this.toggleButton;\r\n const body = document.getElementsByTagName('body')[0];\r\n setTimeout(function () {\r\n if (this.toggleButton != null) {\r\n toggleButton.classList.add('toggled');\r\n }\r\n }, 500);\r\n body.classList.add('nav-open');\r\n setTimeout(function () {\r\n $toggle.classList.add('toggled');\r\n }, 430);\r\n\r\n var $layer = document.createElement('div');\r\n $layer.setAttribute('class', 'close-layer');\r\n\r\n\r\n if (body.querySelectorAll('.main-panel')) {\r\n document.getElementsByClassName('main-panel')[0].appendChild($layer);\r\n } else if (body.classList.contains('off-canvas-sidebar')) {\r\n document.getElementsByClassName('wrapper-full-page')[0].appendChild($layer);\r\n }\r\n\r\n setTimeout(function () {\r\n $layer.classList.add('visible');\r\n }, 100);\r\n\r\n $layer.onclick = function () { //asign a function\r\n body.classList.remove('nav-open');\r\n this.mobile_menu_visible = 0;\r\n this.sidebarVisible = false;\r\n\r\n $layer.classList.remove('visible');\r\n setTimeout(function () {\r\n $layer.remove();\r\n $toggle.classList.remove('toggled');\r\n }, 400);\r\n }.bind(this);\r\n\r\n body.classList.add('nav-open');\r\n this.mobile_menu_visible = 1;\r\n this.sidebarVisible = true;\r\n };\r\n sidebarClose() {\r\n var $toggle = document.getElementsByClassName('navbar-toggler')[0];\r\n const body = document.getElementsByTagName('body')[0];\r\n if (this.toggleButton != null && this.toggleButton.classList != null) {\r\n this.toggleButton.classList.remove('toggled');\r\n }\r\n var $layer = document.createElement('div');\r\n $layer.setAttribute('class', 'close-layer');\r\n\r\n this.sidebarVisible = false;\r\n body.classList.remove('nav-open');\r\n // $('html').removeClass('nav-open');\r\n body.classList.remove('nav-open');\r\n if ($layer) {\r\n $layer.remove();\r\n }\r\n\r\n setTimeout(function () {\r\n $toggle.classList.remove('toggled');\r\n }, 400);\r\n\r\n this.mobile_menu_visible = 0;\r\n };\r\n sidebarToggle() {\r\n if (this.sidebarVisible === false) {\r\n this.sidebarOpen();\r\n } else {\r\n this.sidebarClose();\r\n }\r\n }\r\n\r\n getTitle() {\r\n let titlee: any = this.location.prepareExternalUrl(this.location.path());\r\n for (let i = 0; i < this.listTitles.length; i++) {\r\n if (this.listTitles[i].type === \"link\" && this.listTitles[i].path === titlee) {\r\n return this.listTitles[i].title;\r\n } else if (this.listTitles[i].type === \"sub\") {\r\n for (let j = 0; j < this.listTitles[i].children.length; j++) {\r\n let subtitle = this.listTitles[i].path + '/' + this.listTitles[i].children[j].path;\r\n if (subtitle === titlee) {\r\n return this.listTitles[i].children[j].title;\r\n }\r\n }\r\n }\r\n }\r\n return 'Dashboard';\r\n }\r\n getPath() {\r\n return this.location.prepareExternalUrl(this.location.path());\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n ","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { NavbarComponent } from './navbar.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\n@NgModule({\r\n imports: [ RouterModule, CommonModule, MatButtonModule ],\r\n declarations: [ NavbarComponent ],\r\n exports: [ NavbarComponent ]\r\n})\r\n\r\nexport class NavbarModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\nimport { User } from '../../../_models/user';\r\nimport { AuthService } from '../../../_services/auth.service';\r\nimport { NavbarServiceService } from '../navbar-service.service';\r\n\r\ndeclare const $: any;\r\n\r\n\r\nexport interface RouteTitle {\r\n title: string;\r\n routeInfos: RouteInfo[];\r\n}\r\n\r\n//Metadata\r\nexport interface RouteInfo {\r\n path: string;\r\n title: string;\r\n type: string;\r\n icontype: string;\r\n collapse?: string;\r\n children?: ChildrenItems[];\r\n}\r\n\r\nexport interface ChildrenItems {\r\n path: string;\r\n title: string;\r\n iconName?: string;\r\n ab?: string;\r\n type?: string;\r\n}\r\n\r\n//Menu Items\r\nexport const ROUTES: RouteTitle[] = [\r\n {\r\n title: 'FINANSIJE',\r\n routeInfos: [\r\n {\r\n path: '/finance',\r\n title: 'Finansije',\r\n type: 'link',\r\n icontype: '/assets/img/sidebar-icons/finance-icon.svg'\r\n },\r\n {\r\n path: '',\r\n title: 'Nov',\r\n type: 'dropdown',\r\n icontype: '/assets/img/sidebar-icons/finance-icon.svg',\r\n children: [\r\n {\r\n path: '/finance/client',\r\n title: 'Stranka',\r\n iconName: '/assets/img/finance-icons/client-icon.svg'\r\n },\r\n {\r\n path: '/finance/item',\r\n title: 'Artikal',\r\n iconName: '/assets/img/finance-icons/product-service-icon.svg'\r\n },\r\n {\r\n path: '/finance/document',\r\n title: 'Numeracija dokumenta',\r\n iconName: '/assets/img/finance-icons/numbering-document-icon.svg'\r\n },\r\n {\r\n path: '/finance/account',\r\n title: 'Izdat racun',\r\n iconName: '/assets/img/finance-icons/invoice-issued-icon.svg'\r\n },\r\n {\r\n path: '/izrada',\r\n title: 'Primljen racun',\r\n iconName: '/assets/img/finance-icons/invoice-received-icon.svg'\r\n },\r\n {\r\n path: '/finance/addExchangeRate',\r\n title: 'Kursna lista',\r\n iconName: '/assets/img/finance-icons/numbering-document-icon.svg'\r\n }\r\n\r\n ]\r\n\r\n },\r\n {\r\n path: '',\r\n title: 'Poslovanje',\r\n type: 'dropdown',\r\n icontype: '/assets/img/finance-icons/finance-icon.svg',\r\n children: [\r\n {\r\n path: '/finance/business/client',\r\n title: 'Stranka',\r\n iconName: '/assets/img/finance-icons/client-icon.svg'\r\n },\r\n {\r\n path: '/finance/business/item',\r\n title: 'Artikal',\r\n iconName: '/assets/img/finance-icons/product-service-icon.svg'\r\n },\r\n {\r\n path: '/finance/documentShow',\r\n title: 'Numeracija dokumenta',\r\n iconName: '/assets/img/finance-icons/numbering-document-icon.svg'\r\n },\r\n {\r\n path: '/finance/invoicesAccount',\r\n title: 'Primljeni račun',\r\n iconName: '/assets/img/finance-icons/invoice-received-icon.svg'\r\n },\r\n {\r\n path: '/finance/ExchangerateShow',\r\n title: 'Kursna lista',\r\n iconName: '/assets/img/finance-icons/exchange-icon.svg'\r\n },\r\n {\r\n path: '/finance/displayAllAccount',\r\n title: 'Spisak faktura',\r\n iconName: '/assets/img/finance-icons/numbering-document-icon.svg'\r\n },\r\n {\r\n path: '/finance/invoiceGroups',\r\n title: 'Grupe faktura',\r\n iconName: '/assets/img/finance-icons/numbering-document-icon.svg'\r\n }\r\n ]\r\n },\r\n {\r\n path: '',\r\n title: 'Knjigovodstvo',\r\n type: 'dropdown',\r\n icontype: '/assets/img/sidebar-icons/finance-icon.svg',\r\n children: [\r\n {\r\n path: '/finance/openItem',\r\n // path: '/izrada',\r\n title: 'Otvorene stavke',\r\n iconName: '/assets/img/finance-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: '/finance/bookkeeping-clients',\r\n title: 'Kartice stranke',\r\n iconName: '/assets/img/finance-icons/client-card-icon.svg'\r\n },\r\n {\r\n path: '/izrada',\r\n title: 'IOS',\r\n iconName: '/assets/img/finance-icons/invoice-received-icon.svg'\r\n },\r\n {\r\n path: '/izrada',\r\n // path: '/finance/bookkeeping-incoming-invoices',\r\n title: 'Ulazne fakture',\r\n iconName: '/assets/img/finance-icons/invoice-received-icon.svg'\r\n },\r\n ]\r\n },\r\n {\r\n path: '',\r\n title: 'Banke',\r\n type: 'dropdown',\r\n icontype: '/assets/img/sidebar-icons/finance-icon.svg',\r\n children: [\r\n {\r\n path: '/finance/business/accountStatement',\r\n title: 'Izvodi banaka',\r\n iconName: '/assets/img/finance-icons/account-state-icon.svg'\r\n },\r\n {\r\n path: '/finance/bankBalance', \r\n title: 'Stanje banaka',\r\n iconName: '/assets/img/finance-icons/bank-icon.svg'\r\n }\r\n\r\n ]\r\n },\r\n {\r\n path: '',\r\n title: 'podešavanja',\r\n type: 'dropdown',\r\n icontype: '/assets/img/sidebar-icons/settings-icon.svg',\r\n children: [\r\n {\r\n path: '/finance/accountSettings',\r\n title: 'Podešavanje računa',\r\n iconName: '/assets/img/finance-icons/settings-icon.svg'\r\n },\r\n {\r\n path: '/finance/financial-accounts',\r\n title: 'Tekući računi',\r\n iconName: '/assets/img/finance-icons/settings-icon.svg'\r\n },\r\n {\r\n \r\n path: '/finance/emailSettings',\r\n title: 'Opomene',\r\n iconName: '/assets/img/finance-icons/settings-icon.svg'\r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n title: 'GPS',\r\n routeInfos: [\r\n {\r\n path: '/dashboard',\r\n title: 'Panel',\r\n type: 'link',\r\n icontype: '/assets/img/sidebar-icons/dashboard-icon.svg'\r\n },\r\n {\r\n path: '/companies',\r\n title: 'Kompanije',\r\n type: 'link',\r\n icontype: 'emoji_transportation'\r\n },\r\n {\r\n path: '/users',\r\n title: 'Korisnici',\r\n type: 'link',\r\n icontype: 'group'\r\n },\r\n {\r\n path: '/modems',\r\n title: 'Modemi',\r\n type: 'link',\r\n icontype: 'dns'\r\n },\r\n {\r\n path: '/adminVehicles',\r\n title: 'Vozila',\r\n type: 'link',\r\n icontype: 'directions_car'\r\n },\r\n {\r\n path: '/logisticagents',\r\n title: 'Logistički agenti',\r\n type: 'link',\r\n icontype: 'local_shipping'\r\n }\r\n ]\r\n },\r\n {\r\n title: `SRB`,\r\n routeInfos: [\r\n {\r\n path: `/srbToll/clients`,\r\n title: `Klijenti`,\r\n type: `link`,\r\n icontype: '/assets/img/sidebar-icons/highway-icon.svg'\r\n },\r\n {\r\n path: ``,\r\n title: `Tagovi`,\r\n type: `dropdown`,\r\n icontype: `toll`,\r\n children: [\r\n {\r\n path: `/srbToll/tags`,\r\n title: `Tagovi`,\r\n iconName: '/assets/img/sidebar-icons/enpay-icon.svg'\r\n },\r\n {\r\n path: '/srbToll/tagGroups',\r\n title: 'Grupisani tagovi',\r\n iconName: '/assets/img/sidebar-icons/enpay-icon.svg'\r\n }\r\n ]\r\n },\r\n {\r\n path: ``,\r\n title: `Specifikacije`,\r\n type: `dropdown`,\r\n icontype: `toll`,\r\n children: [\r\n {\r\n path: '/srbToll/specifications',\r\n title: 'Specifikacije',\r\n iconName: '/assets/img/sidebar-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: '/srbToll/specificationReports',\r\n title: 'Izveštaji',\r\n iconName: '/assets/img/sidebar-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: '/srbToll/specificationZipFiles',\r\n title: 'Zip fajlovi',\r\n iconName: '/assets/img/sidebar-icons/zip-icon.svg',\r\n },\r\n {\r\n path: '/srbToll/specificationGroups',\r\n title: 'Grupe fajlova',\r\n iconName: '/assets/img/sidebar-icons/numbering-document-icon.svg',\r\n }\r\n\r\n ]\r\n },\r\n {\r\n path: 'srbToll/statistics',\r\n title: 'Statistika',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n {\r\n path: 'srbToll/dataWarehouseHistory',\r\n title: 'Istorija',\r\n type: 'link',\r\n icontype: 'toll'\r\n }\r\n ]\r\n },\r\n\r\n {\r\n title: `MSTS`,\r\n routeInfos: [\r\n {\r\n path: `/msts/clients`,\r\n title: `Klijenti`,\r\n type: `link`,\r\n icontype: '/assets/img/sidebar-icons/msts-icon.svg'\r\n },\r\n {\r\n path: '',\r\n title: 'Fajlovi',\r\n type: 'dropdown',\r\n icontype: '/assets/img/sidebar-icons/settings-icon.svg',\r\n children: [\r\n {\r\n path: 'msts/specificationGroups',\r\n title: 'Grupe fajlova',\r\n type: 'link',\r\n iconName: '/assets/img/sidebar-icons/numbering-document-icon.svg'\r\n },\r\n {\r\n path: 'msts/specificationImportedFiles',\r\n title: 'Importovani fajlovi',\r\n type: 'link',\r\n iconName: '/assets/img/sidebar-icons/numbering-document-icon.svg'\r\n },\r\n ]\r\n },\r\n {\r\n path: '',\r\n title: 'specifikacije',\r\n type: 'dropdown',\r\n icontype: '/assets/img/sidebar-icons/settings-icon.svg',\r\n children: [\r\n {\r\n path: `/msts/specifications`,\r\n title: `Specifikacije`,\r\n type: `link`,\r\n iconName: '/assets/img/sidebar-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: `/msts/specificationReports`,\r\n title: `Izveštaji specifikacija`,\r\n type: `link`,\r\n iconName: '/assets/img/sidebar-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: '/msts/specificationZipFiles',\r\n title: 'Zip izvestaji',\r\n type: 'link',\r\n iconName: '/assets/img/sidebar-icons/zip-icon.svg'\r\n }]\r\n },\r\n {\r\n path: 'msts/statistics',\r\n title: 'Statistika',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n // {\r\n // path: `/msts/transactionGroups`,\r\n // title: `Grupe transakcija`,\r\n // type: `link`,\r\n // icontype: `toll`\r\n // },\r\n // {\r\n // path: `/msts/transactions`,\r\n // title: `Http Transakcije`,\r\n // type: `icon`,\r\n // icontype: `toll`\r\n // }\r\n ]\r\n },\r\n\r\n {\r\n title: 'Putarine u Grčkoj',\r\n routeInfos: [\r\n {\r\n path: '/grkToll/clients',\r\n title: 'Klijenti',\r\n type: 'link',\r\n icontype: '/assets/img/sidebar-icons/highway-icon.svg'\r\n },\r\n {\r\n path: '',\r\n title: 'Tagovi',\r\n type: 'dropdown',\r\n icontype: 'toll',\r\n children: [\r\n {\r\n path: `/grkToll/tags`,\r\n title: `Tagovi`,\r\n iconName: '/assets/img/sidebar-icons/enpay-icon.svg'\r\n },\r\n {\r\n path: '/grkToll/specificationTags',\r\n title: 'Grupisani tagovi',\r\n iconName: '/assets/img/sidebar-icons/enpay-icon.svg'\r\n }\r\n ]\r\n },\r\n {\r\n path: ``,\r\n title: `Specifikacije`,\r\n type: `dropdown`,\r\n icontype: `toll`,\r\n children: [\r\n {\r\n path: '/grkToll/specifications',\r\n title: 'Specifikacije',\r\n iconName: '/assets/img/sidebar-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: '/grkToll/specificationReports',\r\n title: 'Lista izveštaja',\r\n iconName: '/assets/img/sidebar-icons/open-item-icon.svg'\r\n },\r\n {\r\n path: '/grkToll/specificationReportZipFiles',\r\n title: 'Zip izveštaji',\r\n iconName: '/assets/img/sidebar-icons/zip-icon.svg',\r\n },\r\n {\r\n path: '/grkToll/specificationFileGroups',\r\n title: 'Grupe fajlova',\r\n iconName: '/assets/img/sidebar-icons/numbering-document-icon.svg',\r\n }\r\n ]\r\n },\r\n {\r\n path: '/grkToll/statistics',\r\n title: 'Statistika',\r\n type: 'link',\r\n icontype: 'toll'\r\n }\r\n ]\r\n },\r\n {\r\n title: `Automatcki izvestaji`,\r\n routeInfos: [\r\n {\r\n path: `/automaticReportsTesting`,\r\n title: `Testiranje`,\r\n type: `link`,\r\n icontype: ''\r\n },\r\n \r\n ]\r\n }, \r\n {\r\n \r\n title: 'Testiranje',\r\n routeInfos: [\r\n {\r\n path: '/admin/vehicleMovements',\r\n title: 'Kretanje vozila',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n {\r\n path: '/admin/vehicleMovements_v1',\r\n title: 'Kretanje vozila (v1)',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n {\r\n path: '/admin/vehiclePositionsTest',\r\n title: 'Poslednje pozicije (performans)',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n {\r\n path: '/admin/test/realTimeDashboard',\r\n title: 'Realno Vremenski Dashboard',\r\n type: 'link',\r\n icontype: 'toll'\r\n }\r\n \r\n // {\r\n // path: '/admin/lastPositionsTest',\r\n // title: 'Poslednje pozicije vozila (Početna)',\r\n // type: 'link',\r\n // icontype: 'toll'\r\n // }\r\n ]\r\n },\r\n {\r\n title: 'Goriva',\r\n routeInfos: [\r\n {\r\n path: '/fuelCompanies',\r\n title: 'Klijenti',\r\n type: 'link',\r\n icontype: '/assets/img/sidebar-icons/fuel-icon.svg'\r\n },\r\n {\r\n path: '/fuelCards',\r\n title: 'Kartice',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n {\r\n path: '/fuelConsumptions',\r\n title: 'Potrošnja',\r\n type: 'link',\r\n icontype: 'toll'\r\n },\r\n {\r\n path: '/fuelStatistics',\r\n title: 'Statistika',\r\n type: 'link',\r\n icontype: 'toll'\r\n }\r\n ]\r\n },\r\n {\r\n title: `Pumpe`,\r\n routeInfos: [\r\n {\r\n path: `/unauthorized/gasStationPositions`,\r\n title: `Primer (radi testiranja)`,\r\n type: `link`,\r\n icontype: '/assets/img/sidebar-icons/gasstation-icon.svg'\r\n }\r\n ]\r\n },\r\n\r\n\r\n];\r\n\r\n// OBSOLETE\r\nexport const ROUTES1: RouteInfo[] = [\r\n {\r\n path: '/dashboard',\r\n title: 'Panel',\r\n type: 'link',\r\n icontype: 'dashboard'\r\n },\r\n // {\r\n // path: '/vehicles',\r\n // title: 'Vozila',\r\n // type: 'link',\r\n // icontype: 'directions_car'\r\n // },\r\n // {\r\n // path: '/routes',\r\n // title: 'Rute',\r\n // type: 'link',\r\n // icontype: 'map'\r\n // },\r\n {\r\n path: '/companies',\r\n title: 'Kompanije',\r\n type: 'link',\r\n icontype: 'emoji_transportation'\r\n },\r\n {\r\n path: '/clientUsers',\r\n title: 'Korisnici',\r\n type: 'link',\r\n icontype: 'group'\r\n },\r\n {\r\n path: '/modems',\r\n title: 'Modemi',\r\n type: 'link',\r\n icontype: 'dns'\r\n },\r\n {\r\n path: '/allvehicles',\r\n title: 'Vozila',\r\n type: 'link',\r\n icontype: 'directions_car'\r\n },\r\n {\r\n path: '/logisticagents',\r\n title: 'Logistički agenti',\r\n type: 'link',\r\n icontype: 'local_shipping'\r\n },\r\n // {\r\n // path: '/lockers',\r\n // title: 'Ormani',\r\n // type: 'sub',\r\n // icontype: 'view_module',\r\n // collapse: 'lockers',\r\n // children: [\r\n // {path: '', title: 'Lista ormana', ab: 'LO'},\r\n // {path: 'new', title: 'Kreiraj orman', ab: 'KO'}\r\n // ]\r\n // }\r\n];\r\n@Component({\r\n selector: 'app-sidebar-cmp',\r\n templateUrl: 'sidebar.component.html',\r\n})\r\n\r\nexport class SidebarComponent implements OnInit {\r\n public menuItems = ROUTES;\r\n user: User;\r\n\r\n constructor(private authService: AuthService,\r\n private navbarService: NavbarServiceService) { }\r\n\r\n sendDataToService() {\r\n this.navbarService.setNavbarData(this.menuItems);\r\n }\r\n\r\n sendLinkInfo(linkInfo) {\r\n this.navbarService.setNavbarData(linkInfo);\r\n }\r\n\r\n isMobileMenu() {\r\n if ($(window).width() > 991) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.authService.getAdminUser();\r\n this.sendDataToService();\r\n }\r\n\r\n updatePS(): void {\r\n if (window.matchMedia(`(min-width: 960px)`).matches && !this.isMac()) {\r\n const elemSidebar = document.querySelector('.sidebar .sidebar-wrapper');\r\n let ps = new PerfectScrollbar(elemSidebar, { wheelSpeed: 2, suppressScrollX: true });\r\n }\r\n }\r\n\r\n isMac(): boolean {\r\n let bool = false;\r\n if (navigator.platform.toUpperCase().indexOf('MAC') >= 0 || navigator.platform.toUpperCase().indexOf('IPAD') >= 0) {\r\n bool = true;\r\n }\r\n return bool;\r\n }\r\n\r\n logout() {\r\n localStorage.removeItem('token');\r\n localStorage.removeItem('admin-token');\r\n localStorage.removeItem('client-token');\r\n localStorage.removeItem('serviceMan-token');\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SidebarComponent } from './sidebar.component';\r\n\r\n@NgModule({\r\n imports: [ RouterModule, CommonModule ],\r\n declarations: [ SidebarComponent ],\r\n exports: [ SidebarComponent ]\r\n})\r\n\r\nexport class SidebarModule {}\r\n","import { Component, OnInit, ElementRef } from '@angular/core';\r\nimport { Router, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { Subscription } from 'rxjs/Subscription';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './auth-layout.component.html'\r\n})\r\nexport class AuthLayoutComponent implements OnInit {\r\n private toggleButton: any;\r\n private sidebarVisible: boolean;\r\n mobile_menu_visible: any = 0;\r\n private _router: Subscription;\r\n\r\n constructor(private router: Router, private element: ElementRef) {\r\n this.sidebarVisible = false;\r\n }\r\n ngOnInit(){\r\n const navbar: HTMLElement = this.element.nativeElement;\r\n\r\n this.toggleButton = navbar.getElementsByClassName('navbar-toggler')[0];\r\n this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {\r\n this.sidebarClose();\r\n });\r\n }\r\n sidebarOpen() {\r\n const toggleButton = this.toggleButton;\r\n const body = document.getElementsByTagName('body')[0];\r\n setTimeout(function(){\r\n toggleButton.classList.add('toggled');\r\n }, 500);\r\n body.classList.add('nav-open');\r\n\r\n this.sidebarVisible = true;\r\n };\r\n sidebarClose() {\r\n const body = document.getElementsByTagName('body')[0];\r\n this.toggleButton.classList.remove('toggled');\r\n this.sidebarVisible = false;\r\n body.classList.remove('nav-open');\r\n };\r\n sidebarToggle() {\r\n const body = document.getElementsByTagName('body')[0];\r\n if (this.sidebarVisible === false) {\r\n this.sidebarOpen();\r\n var $layer = document.createElement('div');\r\n $layer.setAttribute('class', 'close-layer');\r\n if (body.querySelectorAll('.wrapper-full-page')) {\r\n document.getElementsByClassName('wrapper-full-page')[0].appendChild($layer);\r\n }else if (body.classList.contains('off-canvas-sidebar')) {\r\n document.getElementsByClassName('wrapper-full-page')[0].appendChild($layer);\r\n }\r\n setTimeout(function() {\r\n $layer.classList.add('visible');\r\n }, 100);\r\n $layer.onclick = function() { //asign a function\r\n body.classList.remove('nav-open');\r\n this.mobile_menu_visible = 0;\r\n $layer.classList.remove('visible');\r\n this.sidebarClose();\r\n }.bind(this);\r\n\r\n body.classList.add('nav-open');\r\n } else {\r\n document.getElementsByClassName(\"close-layer\")[0].remove();\r\n this.sidebarClose();\r\n }\r\n }\r\n}\r\n","\r\n \r\n","import { trigger, transition, style, animate, AnimationTriggerMetadata, state, group, query, animateChild } from '@angular/animations';\r\n\r\nconst defaultDuration = '100ms';\r\nconst defaultMinWidth = '60px';\r\nconst defaultMaxWidth = '250px';\r\nconst defaultMinFontSize = '18px';\r\nconst defaultMaxFontSize = '18px';\r\n\r\nexport function mainContentAnimation(\r\n animationDuration: string = defaultDuration,\r\n minWidth: string = defaultMinWidth,\r\n maxWidth: string = defaultMaxWidth,\r\n): AnimationTriggerMetadata {\r\n return trigger('onSideNavChange', [\r\n state('close',\r\n style({\r\n 'margin-left': minWidth,\r\n })\r\n ),\r\n state('open',\r\n style({\r\n 'margin-left': maxWidth,\r\n })\r\n ),\r\n transition('close => open', animate(`${animationDuration} ease-in`)),\r\n transition('open => close', animate(`${animationDuration} ease-out`)),\r\n ]);\r\n}\r\n\r\nexport function sidebarAnimation(\r\n animationDuration: string = defaultDuration,\r\n minWidth: string = defaultMinWidth,\r\n maxWidth: string = '230px',\r\n): AnimationTriggerMetadata {\r\n return trigger('onSideNavChange', [\r\n state('close',\r\n style({\r\n width: minWidth,\r\n })\r\n ),\r\n state('open',\r\n style({\r\n width: maxWidth,\r\n })\r\n ),\r\n transition('close => open', group([\r\n query('@iconAnimation', animateChild()),\r\n query('@labelAnimation', animateChild()),\r\n animate(`${animationDuration} ease-in-out`)\r\n ])),\r\n transition('open => close', group([\r\n query('@iconAnimation', animateChild()),\r\n query('@labelAnimation', animateChild()),\r\n animate(`${animationDuration} ease-in-out`)\r\n ])),\r\n ]);\r\n}\r\n\r\nexport function iconAnimation(\r\n animationDuration: string = defaultDuration,\r\n minFontSize: string = defaultMinFontSize,\r\n maxFontSize: string = defaultMaxFontSize,\r\n): AnimationTriggerMetadata {\r\n return trigger('iconAnimation', [\r\n state('open', style({\r\n fontSize: maxFontSize\r\n })),\r\n state('close', style({\r\n fontSize: maxFontSize\r\n })),\r\n transition('close => open', animate(`${animationDuration} ease-in-out`)),\r\n transition('open => close', animate(`${animationDuration} ease-in-out`))\r\n ])\r\n}\r\n\r\nexport function labelAnimation(\r\n animationDuration: string = defaultDuration,\r\n): AnimationTriggerMetadata {\r\n return trigger('labelAnimation', [\r\n state('open', style({\r\n display: 'inline',\r\n opacity: 1\r\n })),\r\n state('close', style({\r\n display: 'none',\r\n opacity: 0\r\n })),\r\n transition('close => open', animate(`${animationDuration} ease-in-out`)),\r\n transition('open => close', animate(`${animationDuration} ease-in-out`)),\r\n ]);\r\n}\r\n","import { Component, OnInit, ElementRef } from '@angular/core';\r\nimport { Router, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { Subscription } from 'rxjs/Subscription';\r\n// import { iconAnimation, labelAnimation, sidebarAnimation } from 'src/app/animations/animations';\r\nimport { User } from 'src/app/_models/user';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport { mainContentAnimation } from './animations/animations';\r\nimport { SidebarService } from './services/sidebar.service';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './client-layout.component.html',\r\n styleUrls: ['./client-layout.component.css', './client-layout.component.scss'],\r\n animations: [\r\n mainContentAnimation(),\r\n ]\r\n})\r\nexport class ClientLayoutComponent implements OnInit {\r\n sidebarState = '';\r\n\r\n constructor(\r\n private sidebarService: SidebarService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.sidebarService.sidebarStateObservable$\r\n .subscribe((newState: string) => {\r\n this.sidebarState = newState;\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.css']\r\n})\r\nexport class HeaderComponent {\r\n\r\n}\r\n","\r\n \r\n \r\n \r\n \"\"\r\n LogiMaps\r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport {\r\n iconAnimation,\r\n labelAnimation, sidebarAnimation } from '../../animations/animations';\r\nimport { SidebarService } from '../../services/sidebar.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n animations: [\r\n sidebarAnimation(),\r\n iconAnimation(),\r\n labelAnimation(),\r\n ]\r\n})\r\nexport class SidebarComponent implements OnInit {\r\n sidebarState: string = '';\r\n user = this.authService.getClientUser();\r\n\r\n navigations = [\r\n {\r\n title: 'Opšte',\r\n routes: [\r\n {\r\n title: 'Vozila',\r\n icon: 'fa fa-bus',\r\n path: '/vehicles'\r\n },\r\n {\r\n title: 'Podkorisnici',\r\n icon: 'fa fa-users',\r\n path: '/clientSubusers'\r\n },\r\n {\r\n title: 'Servisna knjiga',\r\n icon: 'fa fa-book',\r\n path: '/serviceBooks'\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Analiza',\r\n routes: [\r\n {\r\n title: 'Kretanje',\r\n icon: 'moving',\r\n path: '/vehicleMovements_v1'\r\n },\r\n {\r\n title: 'Zadržavanje',\r\n icon: 'fa fa-anchor',\r\n path: '/delays'\r\n },\r\n {\r\n title: 'Rad na leru',\r\n icon: 'fa fa-cogs',\r\n path: '/ler'\r\n },\r\n {\r\n title: 'Prekoračenje brzine',\r\n icon: 'speeding',\r\n path: '/speeding'\r\n },\r\n {\r\n title: 'Promena količine goriva',\r\n icon: 'fuel',\r\n path: '/fueling'\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Putarina',\r\n routes: [\r\n {\r\n title: 'Srbija',\r\n icon: 'fa fa-road',\r\n path: '/clientSrbTolls/vehicles'\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Administracija',\r\n routes: [\r\n {\r\n title: 'Radno/neradno vreme',\r\n icon: 'fa fa-briefcase',\r\n path: '/workingHourReports'\r\n },\r\n {\r\n title: 'Automatski izveštaji',\r\n icon: 'fa fa-file-text',\r\n path: '/automaticReports'\r\n },\r\n {\r\n title: 'Vozači',\r\n icon: 'fa fa-street-view',\r\n path: '/drivers'\r\n },\r\n {\r\n title: 'Geofencing',\r\n icon: 'fa fa-globe',\r\n path: '/geofencings'\r\n },\r\n {\r\n title: 'Integracije',\r\n icon: 'fa fa-cog',\r\n path: '/integrations'\r\n },\r\n\r\n {\r\n title: 'POI',\r\n icon: 'fa fa-map-marker',\r\n path: '/point-of-interest'\r\n }\r\n ]\r\n },\r\n {\r\n title: `Ostalo (${this.user?.firstName})`,\r\n routes: [\r\n {\r\n title: 'Odjavi se',\r\n icon: 'fa fa-sign-out',\r\n path: '/login'\r\n }\r\n ]\r\n }\r\n ]\r\n\r\n constructor(\r\n private sidebarService: SidebarService,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.sidebarService.sidebarStateObservable$.\r\n subscribe((newState: string) => {\r\n this.sidebarState = newState;\r\n });\r\n }\r\n\r\n toggleSideNav() {\r\n this.sidebarService.toggle();\r\n }\r\n}\r\n","
\r\n \r\n \r\n\r\n
\r\n
{{ nav.title }}
\r\n \r\n \r\n \r\n {{ route.title }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SidebarService } from '../../services/sidebar.service';\r\n\r\n@Component({\r\n selector: 'app-toggle-sidebar',\r\n templateUrl: './toggle-sidebar.component.html'\r\n})\r\nexport class ToggleSidebarComponent implements OnInit {\r\n\r\n constructor(\r\n private sidebarService: SidebarService,\r\n ) { }\r\n\r\n ngOnInit() { }\r\n\r\n toggleSideNav() {\r\n this.sidebarService.toggle();\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SidebarService {\r\n sidebarState = 'close';\r\n sidebarStateChanged$ = new BehaviorSubject(this.sidebarState);\r\n sidebarStateObservable$ = this.sidebarStateChanged$.asObservable();\r\n\r\n constructor() {\r\n this.sidebarStateChanged$.next('close');\r\n }\r\n\r\n closeSideBar(): void {\r\n this.sidebarStateChanged$.next('close');\r\n this.sidebarState ='close' ;\r\n }\r\n\r\n toggle(): void {\r\n this.sidebarState = this.sidebarState == 'open' ? 'close' : 'open';\r\n this.sidebarStateChanged$.next(this.sidebarState);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-serviceManLayout',\r\n templateUrl: './serviceMan-layout.component.html',\r\n styleUrls: ['./serviceMan-layout.component.scss']\r\n})\r\n\r\nexport class ServiceManLayoutComponent {\r\n \r\n user = this.authService.getServiceManUser();\r\n\r\n routes = [\r\n {\r\n path: 'freeModems',\r\n label: 'Modemi'\r\n },\r\n {\r\n path: 'login',\r\n label: `Odjavi se`\r\n }\r\n ];\r\n\r\n constructor(\r\n private authService: AuthService\r\n ) { }\r\n}\r\n","\r\n \r\n \r\n \r\n {{ route.label }}\r\n \r\n \r\n {{ user.username }}\r\n \r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\n\r\n@Component({\r\n selector: `app-tollDistributerLayout`,\r\n templateUrl: `./tollDistributerLayout.component.html`,\r\n styleUrls: ['./tollDistributerLayout.component.scss']\r\n})\r\n\r\nexport class TollDistributerLayoutComponent {\r\n\r\n user = this.authService.getTollDistributerUser();\r\n\r\n routes = [\r\n {\r\n path: 'srbToll/distributer/clients',\r\n label: 'Klijenti'\r\n },\r\n {\r\n path: 'tollDistributer/tags',\r\n label: 'Tagovi'\r\n },\r\n {\r\n path: 'tollDistributer/specifications',\r\n label: 'Specifikacije'\r\n },\r\n {\r\n path: 'tollDistributer/statistics',\r\n label: 'Statistika'\r\n },\r\n {\r\n path: 'login',\r\n label: `Odjavi se`\r\n }\r\n ];\r\n\r\n constructor(\r\n private authService: AuthService\r\n ) { }\r\n}\r\n","\r\n \r\n \r\n \r\n {{ route.label }}\r\n \r\n \r\n {{ user.username }}\r\n \r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MapService } from '../_services/map.service';\r\n\r\n@Component({\r\n selector: 'app-log-list',\r\n templateUrl: './log-list.component.html',\r\n styleUrls: ['./log-list.component.css']\r\n})\r\nexport class LogListComponent implements OnInit {\r\n spiskovi = [];\r\n greske = [];\r\n message = 'Učitavanje...';\r\n constructor(private mapService: MapService) { }\r\n\r\n ngOnInit() {\r\n this.loadLogs();\r\n }\r\n\r\n loadLogs() {\r\n if (localStorage.selectedVehicleImei != null) {\r\n this.mapService.getLogsSpiskovi(localStorage.selectedVehicleImei, 100).subscribe(data => {\r\n this.spiskovi = data;\r\n this.mapService.getLogsGreske(localStorage.selectedVehicleImei, 100).subscribe(data2 => {\r\n this.greske = data2;\r\n this.message = 'Nema informacija za odabrano vozilo!';\r\n });\r\n });\r\n }\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n assignment\r\n
\r\n

Logovi

\r\n
\r\n \r\n \r\n
0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
VremePoruka
{{spis.vreme_upisa | date: 'dd.MM.yyyy HH:mm:ss'}}{{spis.tekst}}
\r\n
\r\n
\r\n {{message}}\r\n
\r\n
\r\n \r\n
0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
VremePoruka
{{greska.vreme_upisa | date: 'dd.MM.yyyy HH:mm:ss'}}{{greska.tekst}}
\r\n
\r\n
\r\n {{message}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { User } from 'src/app/_models/user';\r\nimport { NotificationService } from 'src/app/_services/notification.service';\r\nimport { UserService } from 'src/app/_services/user.service';\r\nimport { UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MyErrorStateMatcher } from 'src/app/_services/form-group-validation.service';\r\n\r\nexport interface DialogData {\r\n user: User;\r\n}\r\n\r\n@Component({\r\n selector: 'app-changeDialog',\r\n templateUrl: './changeDialog.component.html'\r\n})\r\n\r\nexport class ChangeDialogComponent implements OnInit {\r\n matcher = new MyErrorStateMatcher();\r\n form: UntypedFormGroup;\r\n constructor(public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: DialogData,\r\n private userService: UserService,\r\n private notify: NotificationService, private fb: UntypedFormBuilder, private router: Router) { }\r\n model: any = {};\r\n\r\n ngOnInit() {\r\n this.createForm();\r\n }\r\n\r\n\r\n onNoClick(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n change() {\r\n if (this.form.valid) {\r\n this.model.username = this.data.user.username;\r\n this.userService.changePassword(this.model).subscribe(() => {\r\n this.notify.success('Uspesno promenjena lozinka');\r\n this.dialogRef.close();\r\n if (this.data.user.role === 0) {\r\n this.router.navigate(['/dashboard']);\r\n } else if (this.data.user.role === 1) {\r\n this.router.navigate(['/vehicles']);\r\n } else if (this.data.user.role === 2) {\r\n this.router.navigate(['/freeModems']);\r\n }\r\n }, error => {\r\n this.notify.error('Neuspesna izmena, proverite staru lozinku!');\r\n });\r\n } else {\r\n this.validateAllFormFields(this.form);\r\n this.notify.error('Lozinke se ne poklapaju');\r\n }\r\n }\r\n createForm() {\r\n this.form = this.fb.group({\r\n oldPassword: ['', Validators.required],\r\n newPassword: ['', [Validators.required]],\r\n confirmNewPassword: ['', Validators.required],\r\n }, { validators: [this.passwordMatchValidator] });\r\n }\r\n\r\n passwordMatchValidator(g: UntypedFormGroup) {\r\n return g.get('newPassword').value === g.get('confirmNewPassword').value ? null : { 'mismatch': true };\r\n }\r\n\r\n validateAllFormFields(formGroup: UntypedFormGroup) {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof UntypedFormControl) {\r\n control.markAsTouched();\r\n } else if (control instanceof UntypedFormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n }\r\n}\r\n","

Promena lozinke

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

Trenutna lozinka:

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

Nova lozinka:

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

Potvrda nove lozinke:

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { NotificationService } from 'src/app/_services/notification.service';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-forgot-pass-dialog',\r\n templateUrl: './forgot-pass-dialog.component.html',\r\n styleUrls: ['./forgot-pass-dialog.component.css']\r\n})\r\nexport class ForgotPassDialogComponent implements OnInit {\r\n model: any = {};\r\n username: string;\r\n constructor(public dialogRef: MatDialogRef,\r\n private authService: AuthService,\r\n private notify: NotificationService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n\r\n onNoClick(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n send() {\r\n this.model.username = this.username;\r\n this.authService.sendRequestForChangePassword(this.model).subscribe(() => {\r\n this.notify.message('Poslat zahtev za izmenu lozinke, proverite E-MAIL sanduče');\r\n }, error => {\r\n this.notify.error(error);\r\n }, () => {\r\n this.dialogRef.close();\r\n });\r\n }\r\n\r\n}\r\n","

Promena lozinke

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

Unesite korisničko ime:

\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
","import { Component, OnInit, ElementRef, OnDestroy } from '@angular/core';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { NotificationService } from '../_services/notification.service';\r\nimport { Router } from '@angular/router';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ForgotPassDialogComponent } from './forgot-pass-dialog/forgot-pass-dialog.component';\r\nimport { User } from '../_models/user';\r\nimport { AbstractControl, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { ErrorResponseService } from '../shared/errorResponse/errorResponse.service';\r\nimport { ChangeDialogComponent } from './changeDialog/changeDialog.component';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-login-cmp',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.css']\r\n})\r\n\r\nexport class LoginComponent implements OnInit, OnDestroy {\r\n test: Date = new Date();\r\n private toggleButton: any;\r\n private sidebarVisible: boolean;\r\n private nativeElement: Node;\r\n private currUser: User;\r\n ipAddress = '';\r\n\r\n form = new UntypedFormGroup({\r\n username: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n password: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n \r\n });\r\n\r\n constructor(\r\n public authService: AuthService, \r\n private notify: NotificationService, \r\n private router: Router,\r\n private element: ElementRef, \r\n private dialog: MatDialog,\r\n private errorResponseService: ErrorResponseService,\r\n private http:HttpClient\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.removeTokens();\r\n this.nativeElement = this.element.nativeElement;\r\n this.sidebarVisible = false;\r\n this.getIPAddress();\r\n\r\n var navbar: HTMLElement = this.element.nativeElement;\r\n this.toggleButton = navbar.getElementsByClassName('navbar-toggle')[0];\r\n const body = document.getElementsByTagName('body')[0];\r\n body.classList.add('login-page');\r\n body.classList.add('off-canvas-sidebar');\r\n const card = document.getElementsByClassName('card')[0];\r\n setTimeout(function () {\r\n // after 1000 ms we add the class animated to the login/register card\r\n card?.classList && card.classList.remove('card-hidden');\r\n }, 700);\r\n \r\n }\r\n\r\n getErrorMessage(abstractControl: AbstractControl): string {\r\n if (abstractControl?.errors && (abstractControl?.errors?.required || abstractControl?.errors?.dirty)) {\r\n return 'Ovo polje je obavezno';\r\n }\r\n }\r\n\r\n changePasswordByRole(role: number): void {\r\n const user = {\r\n 0: this.authService.getAdminUser(),\r\n 1: this.authService.getClientUser(),\r\n 2: this.authService.getServiceManUser()\r\n };\r\n\r\n this.openChangeDialog(user[role]);\r\n this.notify.warning('Izmenite privremenu lozinku');\r\n }\r\n\r\n login(): void {\r\n this.authService.loginSystem(this.form.value,this.ipAddress).subscribe(response => {\r\n response?.isTempPassword && this.changePasswordByRole(response.role);\r\n }, error => {\r\n this.errorResponseService.notify(error, 'Neuspešno logovanje! Ne postoji korisnik sa zadatim kredencijalima!');\r\n }, () => {\r\n\r\n });\r\n }\r\n\r\n login_OLD() {\r\n this.authService.login(this.form.value).subscribe(next => {\r\n if (this.authService.currentUser.isTempPassword === true) {\r\n this.openChangeDialog(this.authService.currentUser);\r\n this.notify.warning('Izmenite privremenu lozinku');\r\n } else {\r\n if (this.authService.currentUser.role === 0) {\r\n this.router.navigate(['/dashboard']);\r\n this.notify.success('Uspešno logovanje');\r\n } else if (this.authService.currentUser.role === 1) {\r\n this.router.navigate(['/vehicles']);\r\n this.notify.success('Uspešno logovanje');\r\n } else if (this.authService.currentUser.role === 2) {\r\n this.router.navigate(['/freeModems']);\r\n this.notify.success('Uspešno logovanje');\r\n }\r\n }\r\n }, error => {\r\n this.notify.error('Neuspešno logovanje! Ne postoji korisnik sa zadatim kredencijalima!');\r\n });\r\n \r\n }\r\n\r\n openChangeDialog(user: User) {\r\n const dialogRef = this.dialog.open(ChangeDialogComponent, {\r\n width: '500px',\r\n data: { user: user }\r\n });\r\n }\r\n\r\n sidebarToggle() {\r\n var toggleButton = this.toggleButton;\r\n var body = document.getElementsByTagName('body')[0];\r\n var sidebar = document.getElementsByClassName('navbar-collapse')[0];\r\n if (this.sidebarVisible == false) {\r\n setTimeout(function () {\r\n toggleButton.classList.add('toggled');\r\n }, 500);\r\n body.classList.add('nav-open');\r\n this.sidebarVisible = true;\r\n } else {\r\n this.toggleButton.classList.remove('toggled');\r\n this.sidebarVisible = false;\r\n body.classList.remove('nav-open');\r\n }\r\n }\r\n openDialog() {\r\n const dialogRef = this.dialog.open(ForgotPassDialogComponent, {\r\n width: '500px',\r\n });\r\n }\r\n ngOnDestroy() {\r\n const body = document.getElementsByTagName('body')[0];\r\n body.classList.remove('login-page');\r\n body.classList.remove('off-canvas-sidebar');\r\n }\r\n removeTokens() {\r\n localStorage.removeItem('token');\r\n localStorage.removeItem('admin-token');\r\n localStorage.removeItem('admin-user');\r\n\r\n localStorage.removeItem('client-token');\r\n localStorage.removeItem('client-user');\r\n \r\n localStorage.removeItem('serviceMan-token');\r\n localStorage.removeItem('serviceMan-user');\r\n\r\n }\r\n\r\n isFormControlTouched(control: AbstractControl): boolean {\r\n const isTouched = control?.touched,\r\n hasErrors = Boolean(control?.errors);\r\n\r\n return isTouched && hasErrors;\r\n }\r\n getIPAddress(){\r\n this.authService.getIPAddress().subscribe((data:any) => {\r\n this.ipAddress = data.ip; \r\n })\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n

Logovanje

\r\n \r\n Korisničko ime*\r\n \r\n perm_identity\r\n {{ getErrorMessage(form.controls['username']) }}\r\n \r\n \r\n Lozinka*\r\n \r\n verified_user\r\n {{ getErrorMessage(form.controls['password']) }}\r\n \r\n
\r\n \r\n Zaboravljena lozinka?\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import {Component, Input, OnInit, AfterViewInit, ChangeDetectionStrategy} from '@angular/core';\r\nimport * as Chartist from 'chartist';\r\n\r\nexport interface LegendItem {\r\n title: string;\r\n imageClass: string;\r\n}\r\n\r\nexport enum ChartType {\r\n Pie,\r\n Line,\r\n Bar\r\n}\r\n\r\n@Component({\r\n selector: 'app-md-chart',\r\n templateUrl: './md-chart.component.html',\r\n styleUrls: ['./md-chart.component.css']\r\n})\r\n\r\nexport class MdChartComponent implements OnInit, AfterViewInit {\r\n static currentId = 1;\r\n\r\n @Input()\r\n public title: string;\r\n\r\n @Input()\r\n public subtitle: string;\r\n\r\n @Input()\r\n public chartClass: string;\r\n\r\n @Input()\r\n public chartType: ChartType;\r\n\r\n @Input()\r\n public chartData: any;\r\n\r\n @Input()\r\n public chartOptions: any;\r\n\r\n @Input()\r\n public chartResponsive: any[];\r\n\r\n @Input()\r\n public footerIconClass: string;\r\n\r\n @Input()\r\n public footerText: string;\r\n\r\n @Input()\r\n public legendItems: LegendItem[];\r\n\r\n @Input()\r\n public withHr: boolean;\r\n\r\n public chartId: string;\r\n\r\n constructor() {\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.chartId = `md-chart-${MdChartComponent.currentId++}`;\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n\r\n switch (this.chartType) {\r\n case ChartType.Pie:\r\n new Chartist.Pie(`#${this.chartId}`, this.chartData, this.chartOptions, this.chartResponsive);\r\n break;\r\n case ChartType.Line:\r\n new Chartist.Line(`#${this.chartId}`, this.chartData, this.chartOptions, this.chartResponsive);\r\n break;\r\n case ChartType.Bar:\r\n new Chartist.Bar(`#${this.chartId}`, this.chartData, this.chartOptions, this.chartResponsive);\r\n break;\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n

{{ title }}

\r\n

{{ subtitle }}

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{ item.title }}\r\n \r\n
\r\n
\r\n
\r\n {{ footerText }}\r\n
\r\n
\r\n
\r\n
\r\n","import {Component, Input, ChangeDetectionStrategy} from '@angular/core';\r\n\r\nexport interface TableData {\r\n headerRow: string[];\r\n dataRows: string[][];\r\n}\r\n\r\n@Component({\r\n selector: 'app-md-table',\r\n templateUrl: './md-table.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MdTableComponent {\r\n @Input()\r\n public title: string;\r\n\r\n @Input()\r\n public subtitle: string;\r\n\r\n @Input()\r\n public cardClass: string;\r\n\r\n @Input()\r\n public data: TableData;\r\n\r\n constructor() { }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n {{row[1]}}\r\n \r\n {{row[2]}}\r\n \r\n {{row[3]}}\r\n
\r\n\r\n
\r\n","\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { MdTableComponent } from './md-table/md-table.component';\r\nimport { MdChartComponent } from './md-chart/md-chart.component';\r\n\r\nexport interface DropdownLink {\r\n title: string;\r\n iconClass?: string;\r\n routerLink?: string;\r\n}\r\n\r\nexport enum NavItemType {\r\n Sidebar = 1, // Only ever shown on sidebar\r\n NavbarLeft = 2, // Left-aligned icon-only link on navbar in desktop mode, shown above sidebar items on collapsed sidebar in mobile mode\r\n NavbarRight = 3 // Right-aligned link on navbar in desktop mode, shown above sidebar items on collapsed sidebar in mobile mode\r\n}\r\n\r\nexport interface NavItem {\r\n type: NavItemType;\r\n title: string;\r\n routerLink?: string;\r\n iconClass?: string;\r\n numNotifications?: number;\r\n dropdownItems?: (DropdownLink | 'separator')[];\r\n}\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule\r\n ],\r\n declarations: [\r\n MdTableComponent,\r\n MdChartComponent\r\n ],\r\n exports: [\r\n MdTableComponent,\r\n MdChartComponent\r\n ]\r\n})\r\nexport class MdModule { }\r\n","import { Component, Inject, OnInit, Optional } from '@angular/core';\r\nimport { AbstractControl, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { FinanceService } from 'src/app/_services/finance.service';\r\nimport { NotificationService } from 'src/app/_services/notification.service';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { BusinessFinanceClientComponent } from '../business-finance-client/business-finance-client.component';\r\n@Component({\r\n selector: 'app-add-client-finance',\r\n templateUrl: './add-client-finance.component.html',\r\n styleUrls: ['./add-client-finance.component.css']\r\n})\r\nexport class AddClientFinanceComponent implements OnInit {\r\n\r\n isEdit:boolean =false;\r\n editId:number=null;\r\n\r\n addFinanceForm = new UntypedFormGroup({\r\n username: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n address: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n country: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n post: new UntypedFormControl('', Validators.compose([Validators.required])), \r\n pib: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n indetificationNumber: new UntypedFormControl('', Validators.compose([Validators.required])),\r\n //password je city\r\n password: new UntypedFormControl('',),\r\n customer1: new UntypedFormControl(''),\r\n customer2: new UntypedFormControl(''),\r\n startState: new UntypedFormControl('',),\r\n firstName: new UntypedFormControl('',),\r\n email: new UntypedFormControl('',),\r\n name: new UntypedFormControl('',),\r\n phone: new UntypedFormControl('',),\r\n note: new UntypedFormControl('',),\r\n mobilePhone: new UntypedFormControl('',),\r\n fax: new UntypedFormControl('',),\r\n createdAt: new UntypedFormControl(new Date(),),\r\n sendEmail: new UntypedFormControl(false),\r\n\r\n\r\n });\r\n\r\n emailNotification = new UntypedFormGroup({\r\n dayBeforePayment: new UntypedFormControl(''),\r\n datAfterPayment: new UntypedFormControl(''),\r\n warningBeforeSuspension: new UntypedFormControl('')\r\n })\r\n\r\n showEmailSettingsReport = false;\r\n constructor(private financeService:FinanceService,private router: Router,\r\n private notify: NotificationService, @Optional() public dialogRef: MatDialogRef, \r\n @Optional() @Inject(MAT_DIALOG_DATA) public data: any ) {\r\n \r\n }\r\n \r\n \r\n ngOnInit(): void {\r\n \r\n \r\n if(this.data != null){\r\n this.patchValues(this.data);\r\n this.isEdit =true;\r\n this.editId = this.data.clientFinance.id;\r\n }\r\n \r\n \r\n }\r\n\r\n patchValues(data) {\r\n \r\n this.addFinanceForm.patchValue(data['clientFinance']);\r\n }\r\n onCloseClick(): void {\r\n this.dialogRef.close();\r\n this.router.navigate(['/finance/business/client']);\r\n }\r\n\r\n\r\n \r\n\r\n onSubmit() {\r\n if (this.addFinanceForm.invalid) {\r\n this.notify.warning(`Forma nije isprovno popunjena`);\r\n this.addFinanceForm.markAllAsTouched();\r\n return;\r\n }\r\n \r\n const formData = this.addFinanceForm.value;\r\n let dayP= new Date(formData.createdAt);\r\n dayP =new Date(dayP.getTime() - (dayP.getTimezoneOffset() * 60000));\r\n formData['createdAt'] = dayP;\r\n // console.log(formData);\r\n // return\r\n if(this.isEdit){\r\n this.financeService.editUser( formData,this.editId).subscribe(\r\n (response) => {\r\n // console.log('Uspešno poslato na server', response);\r\n this.notify.success(`Podaci su uspešno ažurirani`);\r\n },\r\n (error) => {\r\n this.notify.warning(error.error);\r\n \r\n }\r\n );\r\n return;\r\n }\r\n \r\n this.financeService.addUser( formData).subscribe(\r\n (response) => {\r\n // console.log('Uspešno poslato na server', response);\r\n this.notify.success(`Stranka je uspešno sačuvana`);\r\n },\r\n (error) => {\r\n this.notify.warning(error.error);\r\n \r\n }\r\n );\r\n \r\n \r\n }\r\n onSubmitNew() {\r\n if (this.addFinanceForm.invalid) {\r\n this.notify.warning(`Forma nije isprovno popunjena`);\r\n this.addFinanceForm.markAllAsTouched();\r\n return;\r\n }\r\n \r\n const formData = this.addFinanceForm.value;\r\n let dayP= new Date(formData.createdAt);\r\n dayP =new Date(dayP.getTime() - (dayP.getTimezoneOffset() * 60000));\r\n formData['createdAt'] = dayP;\r\n //console.log(formData);\r\n if(this.isEdit){\r\n this.financeService.editUser( formData,this.editId).subscribe(\r\n (response) => {\r\n console.log('Uspešno poslato na server', response);\r\n this.notify.warning(`Podaci su uspešno ažurirani`);\r\n },\r\n (error) => {\r\n this.notify.warning(error.error);\r\n \r\n }\r\n );\r\n return;\r\n }\r\n this.financeService.addUser( formData).subscribe(\r\n (response) => {\r\n console.log('Uspešno poslato na server', response);\r\n this.notify.warning(`Stranka je uspešno sačuvana`);\r\n },\r\n (error) => {\r\n this.notify.warning(error.error);\r\n }\r\n );\r\n this.addFinanceForm.reset({ });\r\n \r\n\r\n \r\n \r\n \r\n }\r\n onCustomer1Change(checkBox1:boolean) {\r\n \r\n if (checkBox1) {\r\n \r\n this.addFinanceForm.get('customer1').setValue('Kupac');\r\n } else {\r\n \r\n this.addFinanceForm.get('customer1').setValue('');\r\n }\r\n \r\n \r\n }\r\n onCustomer2Change(checkBox2:boolean) {\r\n \r\n if (checkBox2) {\r\n \r\n this.addFinanceForm.get('customer2').setValue('Dobavljač');\r\n } else {\r\n \r\n this.addFinanceForm.get('customer2').setValue('');\r\n }\r\n \r\n \r\n }\r\n\r\n showEmailSettings(){\r\n //this.notify.warning(\"Kartica u izradi\");\r\n this.showEmailSettingsReport = true;\r\n }\r\n\r\n back() {\r\n this.showEmailSettingsReport = false;\r\n }\r\n onSendEmialChange(checkBox1:boolean) {\r\n \r\n if (checkBox1) {\r\n \r\n this.addFinanceForm.get('sendEmail').setValue(checkBox1);\r\n } else {\r\n \r\n this.addFinanceForm.get('sendEmail').setValue(checkBox1);\r\n }\r\n \r\n \r\n }\r\n \r\n }\r\n\r\n \r\n \r\n \r\n \r\n\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Stranke

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

Osnovni podaci

\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n Naziv je obavezno polje.\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Adresa je obavezno polje.\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Drzava je obavezno polje.\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Pošta je obavezno polje.\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n PIB je obavezno polje.\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Matični broj je obavezno polje.\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n

Kontakti

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n Dan pre dospeća\r\n Dan posle dospeća\r\n Opomena pred isključenje\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { DeliveryOptions } from 'src/app/_models/enums/DeliveryOptions';\r\nimport { FinanceService } from 'src/app/_services/finance.service';\r\nimport { NotificationService } from 'src/app/_services/notification.service';\r\nimport { ConfirmationService } from 'src/app/shared/confirmDialog/services/confirmation.service';\r\n\r\nexport interface DialogData {\r\n invoiceData: any;\r\n}\r\n@Component({\r\n selector: 'app-invoice-send-options',\r\n templateUrl: './invoice-send-options.component.html',\r\n styleUrls: ['./invoice-send-options.component.css']\r\n})\r\nexport class InvoiceSendOptionsComponent implements OnInit {\r\n invoiceData:any = {};\r\n deliveryMetod:number = 1;\r\n selectedOption: DeliveryOptions;\r\n showMenu = false;\r\n buttonLabel = 'POSLATI NA EFAKTURE';\r\n\r\n constructor(public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: DialogData,private notify: NotificationService,private confirmationService:ConfirmationService,private financeService:FinanceService) { }\r\n\r\n ngOnInit(): void {\r\n this.invoiceData = this.data.invoiceData\r\n // console.log(\"🚀 ~ InvoiceSendOptionsComponent ~ ngOnInit ~ this.invoiceData:\", this.invoiceData)\r\n \r\n }\r\n toggleButton() {\r\n switch (this.deliveryMetod) {\r\n case DeliveryOptions.SendToEInvoicesAPI:\r\n this.onSent();\r\n break;\r\n case DeliveryOptions.SendToEInvoicesAPIAndEmail:\r\n // this.notify.success(`U izradi`);\r\n // this.openDialog();\r\n this.onSentToApiAndEmail()\r\n\r\n break;\r\n case DeliveryOptions.SendToEmail:\r\n this.onSentToEmail();\r\n break;\r\n default:\r\n break;\r\n }\r\n}\r\nonSelect(option: DeliveryOptions) {\r\n this.selectedOption = option;\r\n this.showMenu = false; // Close menu after selection if needed\r\n\r\n switch (option) {\r\n case DeliveryOptions.SendToEInvoicesAPI:\r\n this.sendToEInvoicesAPI();\r\n break;\r\n case DeliveryOptions.SendToEInvoicesAPIAndEmail:\r\n this.sendToEInvoicesAPIAndEmail();\r\n break;\r\n case DeliveryOptions.SendToEmail:\r\n this.sendToEmail();\r\n break;\r\n default:\r\n break;\r\n }\r\n}\r\n\r\n sendToEInvoicesAPI() {\r\n this.setButtonLabelAndDeliveryMethod('POSLATI NA EFAKTURE', DeliveryOptions.SendToEInvoicesAPI);\r\n }\r\n\r\n sendToEInvoicesAPIAndEmail() {\r\n this.setButtonLabelAndDeliveryMethod('POSLATI NA EFAKTURE I EMAIL', DeliveryOptions.SendToEInvoicesAPIAndEmail);\r\n }\r\n\r\n sendToEmail() {\r\n this.setButtonLabelAndDeliveryMethod('POSLATI NA EMAIL', DeliveryOptions.SendToEmail);\r\n }\r\n\r\n setButtonLabelAndDeliveryMethod(label: string, method: DeliveryOptions) {\r\n this.buttonLabel = label;\r\n this.deliveryMetod = method;\r\n }\r\n onSentToApiAndEmail(){\r\n const currTime = new Date();\r\n this.confirmationService.confirm({\r\n header: 'Potvrda slanja na e-fakturu i email',\r\n message: currTime.getHours() >= 0 && currTime.getHours() <= 6 ? 'Servis trenutno nije u funkciji' : 'Da li želite da pošaljete račun na e-fakture?',\r\n accept: () => {\r\n // this.loading = true;\r\n this.financeService.sendInvoiceToEInvoiceAPI(this.invoiceData.id).subscribe(\r\n (response) => {\r\n debugger\r\n\r\n // console.log('Uspešno poslato na server', response);\r\n this.notify.success(`Racun je uspešno poslat`);\r\n // this.router.navigate(['/finance/account']);\r\n \r\n },\r\n (error) => {\r\n debugger\r\n\r\n this.notify.error('Greška prilikom slanja na server');\r\n }\r\n );\r\n this.financeService.sendInvoiceToEmail(this.invoiceData.id).subscribe(\r\n (response) => {\r\n // debugger\r\n if (response) {\r\n this.notify.success(`Racun je uspešno poslat`);\r\n return \r\n }\r\n // console.log('Uspešno poslato na email', response);\r\n this.notify.error(`Greška prilikom slanja`);\r\n // this.router.navigate(['/finance/account']);\r\n \r\n },\r\n (error) => {\r\n // debugger\r\n\r\n this.notify.error('Greška prilikom slanja');\r\n }\r\n );\r\n }\r\n })\r\n }\r\n onSent(){\r\n const currTime = new Date();\r\n this.confirmationService.confirm({\r\n header: 'Potvrda slanja na e-fakturu ',\r\n message: currTime.getHours() >= 0 && currTime.getHours() <= 6 ? 'Servis trenutno nije u funkciji' : 'Da li želite da pošaljete račun na e-fakture?',\r\n accept: () => {\r\n // this.loading = true;\r\n this.financeService.sendInvoiceToEInvoiceAPI(this.invoiceData.id).subscribe(\r\n (response) => {\r\n // debugger\r\n\r\n // console.log('Uspešno poslato na server', response);\r\n this.notify.success(`Racun je uspešno poslat`);\r\n // this.router.navigate(['/finance/account']);\r\n \r\n },\r\n (error) => {\r\n debugger\r\n\r\n this.notify.error('Greška prilikom slanja na server');\r\n }\r\n );\r\n }\r\n })\r\n }\r\n onSentToEmail(){\r\n this.confirmationService.confirm({\r\n header: 'Potvrda slanja na e-mail ',\r\n message: 'Da li želite da pošaljete račun na e-mail',\r\n accept: () => {\r\n // this.loading = true;\r\n this.financeService.sendInvoiceToEmail(this.invoiceData.id).subscribe(\r\n (response) => {\r\n // debugger\r\n if (response) {\r\n this.notify.success(`Racun je uspešno poslat`);\r\n return \r\n }\r\n // console.log('Uspešno poslato na email', response);\r\n this.notify.error(`Greška prilikom slanja`);\r\n // this.router.navigate(['/finance/account']);\r\n \r\n },\r\n (error) => {\r\n // debugger\r\n\r\n this.notify.error('Greška prilikom slanja');\r\n }\r\n );\r\n }\r\n })\r\n }\r\n onNoClick(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","\r\n

Izaberite opciju za slanja fakture

\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n send {{ buttonLabel }}\r\n \r\n arrow_drop_down\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Confirmation } from './models/confirmation-model';\r\n\r\n@Component({\r\n selector: 'app-confirmationDialog',\r\n templateUrl: './confirmDialog.component.html'\r\n})\r\n\r\nexport class ConfirmationDialogComponent implements OnInit {\r\n model: Confirmation;\r\n\r\n constructor(public dialogRef: MatDialogRef\r\n ,@Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n\r\n ngOnInit(): void {\r\n this.init();\r\n }\r\n\r\n init(): void {\r\n this.model = {\r\n header: this.data.confirmation.header ? this.data.confirmation.header : 'Potvrda',\r\n width: this.data.confirmation.widht ? this.data.confirmation.width : '60vw',\r\n message: this.data.confirmation.message ? this.data.confirmation.message : 'Da li ste sigurni?',\r\n acceptLabel: this.data.confirmation.acceptLabel ? this.data.confirmation.acceptLabel : 'Nastavi',\r\n rejectLabel: this.data.confirmation.rejectLabel ? this.data.confirmation.rejectLabel : 'Odustani',\r\n acceptDisabled: this.data.confirmation.acceptDisabled ? this.data.confirmation.acceptDisabled : false\r\n };\r\n }\r\n\r\n close(): void {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n confirm(): void {\r\n this.dialogRef.close(true);\r\n }\r\n}\r\n","

\r\n {{ model.header }}\r\n

\r\n\r\n

\r\n {{ model.message }}\r\n

\r\n
\r\n\r\n \r\n \r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmationDialogComponent } from '../confirmDialog.component';\r\nimport { Confirmation } from '../models/confirmation-model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ConfirmationService {\r\n\r\n confirmFunction: any;\r\n\r\n constructor(public dialog: MatDialog) { }\r\n\r\n confirm(confirmation: Confirmation): void {\r\n const dialogRef = this.dialog.open(ConfirmationDialogComponent, {\r\n width: confirmation.width ? confirmation.width : '350px',\r\n data: {\r\n confirmation: confirmation\r\n },\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result) {\r\n this.confirmFunction = confirmation.accept ? confirmation.accept : () => { };\r\n this.onAccept();\r\n } else {\r\n this.confirmFunction = confirmation.reject ? confirmation.reject : () => { };\r\n this.close();\r\n }\r\n });\r\n }\r\n\r\n onAccept(): void {\r\n this.confirmFunction();\r\n }\r\n\r\n close(): void {\r\n this.confirmFunction();\r\n }\r\n}\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { ErrorMessage } from \"./models/errorMessage.model\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\n\r\n@Component({\r\n selector: 'app-errorMessageDialog',\r\n templateUrl: './errorMessageDialog.component.html'\r\n})\r\n\r\nexport class ErrorMessageDialogComponent {\r\n\r\n model: ErrorMessage = {\r\n header: this.data.model.header || 'Serverska greška',\r\n width: this.data.model.widht || '60wv',\r\n message: this.data.model.message || 'Došlo je do greške',\r\n closeLabel: this.data.model.closeLabel || 'U redu'\r\n };\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any\r\n ) { \r\n console.log(this.model);\r\n }\r\n \r\n close(): void {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","

{{ model.header }}

\r\n\r\n
    \r\n
  • \r\n {{ model.message }}\r\n
  • \r\n
\r\n
\r\n\r\n \r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ErrorMessage } from '../models/errorMessage.model';\r\nimport { ErrorMessageDialogComponent } from '../errorMessageDialog.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ErrorMessageService {\r\n\r\n closeFunction: any;\r\n\r\n constructor(\r\n public dialog: MatDialog\r\n ) { }\r\n \r\n displayDialog({ errorMessage }: { errorMessage: ErrorMessage }): void {\r\n this.dialog.open(ErrorMessageDialogComponent, {\r\n width: errorMessage.width ? errorMessage.width : '60wv',\r\n data: { model: errorMessage },\r\n }).afterClosed().subscribe(result => this.close());\r\n }\r\n \r\n private close(): void {\r\n // this.closeFunction();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { NotificationService } from 'src/app/_services/notification.service';\r\nimport { ErrorMessageService } from '../errorMessageDialog/services/errorMessage.service';\r\nimport { ErrorMessage } from '../errorMessageDialog/models/errorMessage.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ErrorResponseService {\r\n\r\n constructor(\r\n private errorMessageService: ErrorMessageService,\r\n private notificationService: NotificationService\r\n ) { }\r\n\r\n notify(error, errorMessage = 'Došlo je do greške na serveru'): void {\r\n console.log(error);\r\n errorMessage = this.initErrorMessage({ error, errorMessage });\r\n this.notificationService.error(errorMessage);\r\n }\r\n\r\n private initErrorMessage({ error, errorMessage }) {\r\n if (typeof (error.error) === 'string' && error.error?.length < 100)\r\n errorMessage = error.error;\r\n if (Array.isArray(error.error) && error.error?.length > 0)\r\n errorMessage = error.error[0];\r\n return errorMessage;\r\n }\r\n\r\n openDialog(error, message = 'Došlo je do greške na serveru'): void {\r\n console.log(error);\r\n this.errorMessageService.displayDialog({\r\n errorMessage: this._errorMessageResponse({ error, message })\r\n });\r\n }\r\n\r\n private _errorMessageResponse({ error, message }): ErrorMessage {\r\n return {\r\n header: `Serverska greška sa statusom ${error.status}`,\r\n message: this._dialogErrorMessage({ error, message })\r\n };\r\n }\r\n\r\n private _dialogErrorMessage({ error, message }): string {\r\n if (typeof (error.error) === 'string')\r\n message = error.error;\r\n if (Array.isArray(error.error) && error.error?.length > 0)\r\n message = error.error[0];\r\n return message;\r\n }\r\n}","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loader',\r\n templateUrl: './progressLoader.component.html',\r\n styleUrls: ['./progressLoader.component.css']\r\n})\r\n\r\nexport class ProgressLoaderComponent {\r\n\r\n @Input('loading') loading = true;\r\n}\r\n","
\r\n \r\n \r\n
\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { ProgressLoaderComponent } from './progressLoader.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n ProgressLoaderComponent\r\n ],\r\n exports: [\r\n ProgressLoaderComponent\r\n ]\r\n})\r\n\r\nexport class ProgressLoaderModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport Map from 'ol/Map';\r\nimport OSM from 'ol/source/OSM';\r\nimport View from 'ol/View';\r\nimport Feature from 'ol/Feature';\r\nimport Point from 'ol/geom/Point';\r\nimport { fromLonLat } from 'ol/proj.js';\r\nimport { transform } from 'ol/proj.js';\r\nimport { Tile as TileLayer, Vector as VectorLayer } from 'ol/layer';\r\nimport VectorSource from 'ol/source/Vector';\r\nimport { Icon, Style } from 'ol/style';\r\nimport { MapService } from '../_services/map.service';\r\nimport { VehiclePosition } from '../_models/vehiclePosition';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport * as signalR from '@aspnet/signalr';\r\nimport { Subscription, timer, pipe, Observable } from 'rxjs';\r\nimport { switchMap } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-vehiclePosition',\r\n templateUrl: './vehiclePosition.component.html',\r\n styleUrls: ['./vehiclePosition.component.css']\r\n})\r\n\r\nexport class VehiclePositionComponent implements OnInit {\r\n\r\n public data: VehiclePosition;\r\n vectorLayer;\r\n imei: string;\r\n map;\r\n vectorSource;\r\n position: VehiclePosition;\r\n private hubConnection: signalR.HubConnection;\r\n counter = 0;\r\n subscription: Subscription;\r\n currPosition: VehiclePosition;\r\n constructor(private route: ActivatedRoute, private mapService: MapService, private http: HttpClient) { }\r\n\r\n ngOnInit() {\r\n this.mapService.getLastPosition(this.route.snapshot.params['id']).subscribe(data => {\r\n this.position = data;\r\n this.imei = this.position.imei;\r\n this.initilizeMap();\r\n });\r\n\r\n if (environment.UseSqlDependency === true) {\r\n this.hubConnection = new signalR.HubConnectionBuilder()\r\n .withUrl('http://logimapsgpsapi.azurewebsites.net/maps')\r\n .build();\r\n\r\n this.hubConnection\r\n .start()\r\n .then(() => console.log('Connection started'))\r\n .catch(err => console.log('Error while starting connection: ' + err));\r\n this.hubConnection.on('transferpositiondata', (data) => {\r\n this.data = data;\r\n console.log(data);\r\n if (this.data.imei === this.imei) {\r\n this.position = this.data;\r\n const lonLat2 = [Number(this.position.latitude), Number(this.position.longitude)];\r\n this.setMarker(lonLat2);\r\n if (this.counter === 4) {\r\n this.centerMap(lonLat2);\r\n this.counter = 0;\r\n }\r\n this.counter++;\r\n }\r\n });\r\n } else {\r\n this.subscription = timer(10000, 15000).pipe(\r\n switchMap(() => this.getCurrPosition())\r\n ).subscribe();\r\n }\r\n\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n if (environment.UseSqlDependency === true) {\r\n this.hubConnection\r\n .stop()\r\n .then(() => console.log('Connection stopped'))\r\n .catch(err => console.log('Error: ' + err));\r\n this.hubConnection = null;\r\n } else {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n\r\n getCurrPosition() {\r\n this.mapService.getLastPosition(this.route.snapshot.params['id']).subscribe(data => {\r\n this.currPosition = data;\r\n this.position = this.currPosition;\r\n const lonLat2 = [Number(this.position.latitude), Number(this.position.longitude)];\r\n this.setMarker(lonLat2);\r\n if (this.counter === 4) {\r\n this.centerMap(lonLat2);\r\n this.counter = 0;\r\n }\r\n this.counter++;\r\n });\r\n return this.mapService.getLastPosition(this.route.snapshot.params['id']);\r\n }\r\n initilizeMap() {\r\n const lonLat = [Number(this.position.latitude), Number(this.position.longitude)];\r\n this.map = new Map({\r\n layers: [\r\n new TileLayer({\r\n source: new OSM(),\r\n })\r\n ],\r\n target: 'map',\r\n view: new View({\r\n center: fromLonLat(lonLat),\r\n zoom: 16\r\n })\r\n });\r\n this.setMarker(lonLat);\r\n }\r\n\r\n setMarker(lonLat) {\r\n if (this.vectorLayer) {\r\n this.map.removeLayer(this.vectorLayer);\r\n }\r\n const iconFeatures = [];\r\n\r\n const iconFeature = new Feature({\r\n geometry: new Point(transform(lonLat, 'EPSG:4326',\r\n 'EPSG:3857')),\r\n });\r\n\r\n iconFeatures.push(iconFeature);\r\n\r\n const vectorSource = new VectorSource({\r\n features: iconFeatures\r\n });\r\n\r\n const iconStyle = new Style({\r\n image: new Icon(/** @type {olx.style.IconOptions} */({\r\n anchor: [0.5, 46],\r\n anchorXUnits: 'fraction',\r\n anchorYUnits: 'pixels',\r\n opacity: 0.75,\r\n src: 'assets/marker.png'\r\n }))\r\n });\r\n\r\n\r\n this.vectorLayer = new VectorLayer({\r\n source: vectorSource,\r\n style: iconStyle\r\n });\r\n\r\n this.map.addLayer(this.vectorLayer);\r\n }\r\n\r\n centerMap(lonLat) {\r\n this.map.getView().setCenter(fromLonLat(lonLat));\r\n this.map.getView().setZoom(16);\r\n }\r\n}\r\n","
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport Map from 'ol/Map';\r\nimport OSM from 'ol/source/OSM';\r\nimport View from 'ol/View';\r\nimport Feature from 'ol/Feature';\r\nimport Point from 'ol/geom/Point';\r\nimport { fromLonLat } from 'ol/proj.js';\r\nimport { transform } from 'ol/proj.js';\r\nimport { Tile as TileLayer, Vector as VectorLayer } from 'ol/layer';\r\nimport VectorSource from 'ol/source/Vector';\r\nimport { Icon, Style, Stroke } from 'ol/style';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { VehiclePosition } from 'src/app/_models/vehiclePosition';\r\nimport { MapService } from 'src/app/_services/map.service';\r\nimport { LineString } from 'ol/geom';\r\n\r\n@Component({\r\n selector: 'app-mapRoutes',\r\n templateUrl: './mapRoutes.component.html',\r\n styleUrls: ['./mapRoutes.component.css']\r\n})\r\nexport class MapRoutesComponent implements OnInit {\r\n\r\n map;\r\n vectorSource;\r\n vectorLayer;\r\n // position: VehiclePosition;\r\n positions: VehiclePosition[];\r\n constructor(private route: ActivatedRoute, private mapService: MapService, private http: HttpClient) { }\r\n\r\n ngOnInit() {\r\n this.route.data.subscribe(data => {\r\n this.positions = data['positions'];\r\n this.initilizeMap();\r\n });\r\n // this.mapService.getLastPosition(this.route.snapshot.params['id']).subscribe(data => {\r\n // this.position = data;\r\n // this.initilizeMap();\r\n // });\r\n }\r\n\r\n initilizeMap() {\r\n const lonLat = [Number(this.positions[0].latitude), Number(this.positions[0].longitude)];\r\n this.map = new Map({\r\n layers: [\r\n new TileLayer({\r\n source: new OSM(),\r\n })\r\n ],\r\n target: 'map',\r\n view: new View({\r\n center: fromLonLat(lonLat),\r\n zoom: 16\r\n })\r\n });\r\n this.setRoute();\r\n }\r\n setRoute() {\r\n\r\n // var lonlat = fromLonLat([20.5022416, 44.7803966]);\r\n // var location2 = fromLonLat([20.5022183, 44.7808116]);\r\n\r\n var lonlats = [];\r\n\r\n for (let pos of this.positions) {\r\n debugger;\r\n var lonlat = fromLonLat([Number(pos.latitude), Number(pos.longitude)]);\r\n lonlats.push(lonlat);\r\n }\r\n\r\n var linie2style = [\r\n new Style({\r\n stroke: new Stroke({\r\n color: '#00008B',\r\n width: 4\r\n })\r\n })\r\n ];\r\n\r\n var linie2 = new VectorLayer({\r\n source: new VectorSource({\r\n features: [new Feature({\r\n geometry: new LineString(lonlats),\r\n name: 'Line',\r\n })]\r\n })\r\n });\r\n\r\n linie2.setStyle(linie2style);\r\n this.map.addLayer(linie2);\r\n }\r\n}\r\n","
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { UntypedFormGroup, UntypedFormControl } from '@angular/forms';\r\nimport { MapService } from '../_services/map.service';\r\nimport { Vehicle } from '../_models/vehicle';\r\n\r\n@Component({\r\n selector: 'app-vehicleRoutes',\r\n templateUrl: './vehicleRoutes.component.html',\r\n styleUrls: ['./vehicleRoutes.component.css']\r\n})\r\nexport class VehicleRoutesComponent implements OnInit {\r\n date = new Date();\r\n dateForm: UntypedFormGroup;\r\n vehicles: Vehicle[];\r\n \r\n\r\n constructor(private mapService: MapService) { }\r\n\r\n ngOnInit() {\r\n this.mapService.getVehicles(this.date).subscribe(data => {\r\n this.vehicles = data;\r\n });\r\n this.dateForm = new UntypedFormGroup({\r\n date: new UntypedFormControl(this.date),\r\n });\r\n }\r\n\r\n loadData() {\r\n var selectedDate = this.dateForm.get('date').value;\r\n this.date = selectedDate;\r\n this.date.setHours(0, 0, 0, 0);\r\n this.mapService.getVehicles(this.date).subscribe(data => {\r\n this.vehicles = data;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n map\r\n
\r\n

Rute

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
TabliceMarkaTipBroj kartice
{{vehicle.tag}}{{vehicle.brand}}{{vehicle.type}} {{vehicle.cardNumber}}
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n // production: false,\r\n // apiUrl: 'http://localhost:5000/api/',\r\n // hubUrl: 'http://localhost:5000/hubs/',\r\n // // apiUrl: 'https://logimapsgpsapi.azurewebsites.net/api/',\r\n // // apiUrl: 'http://logimapsgpsapi.azurewebsites.net/api/',\r\n\r\n // UseSqlDependency: false\r\n\r\n production: true,\r\n apiUrl: 'https://logimapsgpsapi.azurewebsites.net/api/',\r\n hubUrl: 'https://logimapsgpsapi.azurewebsites.net/hubs/',\r\n whitelistDomains: ['logimapsgpsapi.azurewebsites.net'],\r\n blacklistUrls: ['logimapsgpsapi.azurewebsites.net/api/auth'],\r\n UseSqlDependency: false\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n\r\n// export { renderModule, renderModuleFactory } from '@angular/platform-server';","var map = {\n\t\"./af\": 58685,\n\t\"./af.js\": 58685,\n\t\"./ar\": 254,\n\t\"./ar-dz\": 4312,\n\t\"./ar-dz.js\": 4312,\n\t\"./ar-kw\": 32614,\n\t\"./ar-kw.js\": 32614,\n\t\"./ar-ly\": 18630,\n\t\"./ar-ly.js\": 18630,\n\t\"./ar-ma\": 28674,\n\t\"./ar-ma.js\": 28674,\n\t\"./ar-sa\": 49032,\n\t\"./ar-sa.js\": 49032,\n\t\"./ar-tn\": 24730,\n\t\"./ar-tn.js\": 24730,\n\t\"./ar.js\": 254,\n\t\"./az\": 53052,\n\t\"./az.js\": 53052,\n\t\"./be\": 60150,\n\t\"./be.js\": 60150,\n\t\"./bg\": 63069,\n\t\"./bg.js\": 63069,\n\t\"./bm\": 13466,\n\t\"./bm.js\": 13466,\n\t\"./bn\": 18516,\n\t\"./bn-bd\": 90557,\n\t\"./bn-bd.js\": 90557,\n\t\"./bn.js\": 18516,\n\t\"./bo\": 26273,\n\t\"./bo.js\": 26273,\n\t\"./br\": 9588,\n\t\"./br.js\": 9588,\n\t\"./bs\": 19815,\n\t\"./bs.js\": 19815,\n\t\"./ca\": 83331,\n\t\"./ca.js\": 83331,\n\t\"./cs\": 21320,\n\t\"./cs.js\": 21320,\n\t\"./cv\": 72219,\n\t\"./cv.js\": 72219,\n\t\"./cy\": 68266,\n\t\"./cy.js\": 68266,\n\t\"./da\": 66427,\n\t\"./da.js\": 66427,\n\t\"./de\": 67435,\n\t\"./de-at\": 52871,\n\t\"./de-at.js\": 52871,\n\t\"./de-ch\": 12994,\n\t\"./de-ch.js\": 12994,\n\t\"./de.js\": 67435,\n\t\"./dv\": 82357,\n\t\"./dv.js\": 82357,\n\t\"./el\": 95649,\n\t\"./el.js\": 95649,\n\t\"./en-au\": 59961,\n\t\"./en-au.js\": 59961,\n\t\"./en-ca\": 10860,\n\t\"./en-ca.js\": 10860,\n\t\"./en-gb\": 3924,\n\t\"./en-gb.js\": 3924,\n\t\"./en-ie\": 70864,\n\t\"./en-ie.js\": 70864,\n\t\"./en-il\": 91579,\n\t\"./en-il.js\": 91579,\n\t\"./en-in\": 30940,\n\t\"./en-in.js\": 30940,\n\t\"./en-nz\": 16181,\n\t\"./en-nz.js\": 16181,\n\t\"./en-sg\": 44301,\n\t\"./en-sg.js\": 44301,\n\t\"./eo\": 85291,\n\t\"./eo.js\": 85291,\n\t\"./es\": 54529,\n\t\"./es-do\": 53764,\n\t\"./es-do.js\": 53764,\n\t\"./es-mx\": 12584,\n\t\"./es-mx.js\": 12584,\n\t\"./es-us\": 63425,\n\t\"./es-us.js\": 63425,\n\t\"./es.js\": 54529,\n\t\"./et\": 35203,\n\t\"./et.js\": 35203,\n\t\"./eu\": 70678,\n\t\"./eu.js\": 70678,\n\t\"./fa\": 83483,\n\t\"./fa.js\": 83483,\n\t\"./fi\": 96262,\n\t\"./fi.js\": 96262,\n\t\"./fil\": 52521,\n\t\"./fil.js\": 52521,\n\t\"./fo\": 34555,\n\t\"./fo.js\": 34555,\n\t\"./fr\": 63131,\n\t\"./fr-ca\": 88239,\n\t\"./fr-ca.js\": 88239,\n\t\"./fr-ch\": 21702,\n\t\"./fr-ch.js\": 21702,\n\t\"./fr.js\": 63131,\n\t\"./fy\": 267,\n\t\"./fy.js\": 267,\n\t\"./ga\": 23821,\n\t\"./ga.js\": 23821,\n\t\"./gd\": 71753,\n\t\"./gd.js\": 71753,\n\t\"./gl\": 4074,\n\t\"./gl.js\": 4074,\n\t\"./gom-deva\": 92762,\n\t\"./gom-deva.js\": 92762,\n\t\"./gom-latn\": 5969,\n\t\"./gom-latn.js\": 5969,\n\t\"./gu\": 82809,\n\t\"./gu.js\": 82809,\n\t\"./he\": 45402,\n\t\"./he.js\": 45402,\n\t\"./hi\": 315,\n\t\"./hi.js\": 315,\n\t\"./hr\": 10410,\n\t\"./hr.js\": 10410,\n\t\"./hu\": 38288,\n\t\"./hu.js\": 38288,\n\t\"./hy-am\": 67928,\n\t\"./hy-am.js\": 67928,\n\t\"./id\": 71334,\n\t\"./id.js\": 71334,\n\t\"./is\": 86959,\n\t\"./is.js\": 86959,\n\t\"./it\": 34864,\n\t\"./it-ch\": 51124,\n\t\"./it-ch.js\": 51124,\n\t\"./it.js\": 34864,\n\t\"./ja\": 36141,\n\t\"./ja.js\": 36141,\n\t\"./jv\": 29187,\n\t\"./jv.js\": 29187,\n\t\"./ka\": 42136,\n\t\"./ka.js\": 42136,\n\t\"./kk\": 94332,\n\t\"./kk.js\": 94332,\n\t\"./km\": 18607,\n\t\"./km.js\": 18607,\n\t\"./kn\": 84305,\n\t\"./kn.js\": 84305,\n\t\"./ko\": 70234,\n\t\"./ko.js\": 70234,\n\t\"./ku\": 16003,\n\t\"./ku.js\": 16003,\n\t\"./ky\": 75061,\n\t\"./ky.js\": 75061,\n\t\"./lb\": 32786,\n\t\"./lb.js\": 32786,\n\t\"./lo\": 66183,\n\t\"./lo.js\": 66183,\n\t\"./lt\": 50029,\n\t\"./lt.js\": 50029,\n\t\"./lv\": 24169,\n\t\"./lv.js\": 24169,\n\t\"./me\": 68577,\n\t\"./me.js\": 68577,\n\t\"./mi\": 68177,\n\t\"./mi.js\": 68177,\n\t\"./mk\": 50337,\n\t\"./mk.js\": 50337,\n\t\"./ml\": 65260,\n\t\"./ml.js\": 65260,\n\t\"./mn\": 52325,\n\t\"./mn.js\": 52325,\n\t\"./mr\": 14695,\n\t\"./mr.js\": 14695,\n\t\"./ms\": 75334,\n\t\"./ms-my\": 37151,\n\t\"./ms-my.js\": 37151,\n\t\"./ms.js\": 75334,\n\t\"./mt\": 63570,\n\t\"./mt.js\": 63570,\n\t\"./my\": 97963,\n\t\"./my.js\": 97963,\n\t\"./nb\": 88028,\n\t\"./nb.js\": 88028,\n\t\"./ne\": 86638,\n\t\"./ne.js\": 86638,\n\t\"./nl\": 50302,\n\t\"./nl-be\": 66782,\n\t\"./nl-be.js\": 66782,\n\t\"./nl.js\": 50302,\n\t\"./nn\": 33501,\n\t\"./nn.js\": 33501,\n\t\"./oc-lnc\": 50563,\n\t\"./oc-lnc.js\": 50563,\n\t\"./pa-in\": 50869,\n\t\"./pa-in.js\": 50869,\n\t\"./pl\": 65302,\n\t\"./pl.js\": 65302,\n\t\"./pt\": 49687,\n\t\"./pt-br\": 74884,\n\t\"./pt-br.js\": 74884,\n\t\"./pt.js\": 49687,\n\t\"./ro\": 79107,\n\t\"./ro.js\": 79107,\n\t\"./ru\": 33627,\n\t\"./ru.js\": 33627,\n\t\"./sd\": 30355,\n\t\"./sd.js\": 30355,\n\t\"./se\": 83427,\n\t\"./se.js\": 83427,\n\t\"./si\": 11848,\n\t\"./si.js\": 11848,\n\t\"./sk\": 54590,\n\t\"./sk.js\": 54590,\n\t\"./sl\": 20184,\n\t\"./sl.js\": 20184,\n\t\"./sq\": 56361,\n\t\"./sq.js\": 56361,\n\t\"./sr\": 78965,\n\t\"./sr-cyrl\": 81287,\n\t\"./sr-cyrl.js\": 81287,\n\t\"./sr.js\": 78965,\n\t\"./ss\": 25456,\n\t\"./ss.js\": 25456,\n\t\"./sv\": 70451,\n\t\"./sv.js\": 70451,\n\t\"./sw\": 77558,\n\t\"./sw.js\": 77558,\n\t\"./ta\": 51356,\n\t\"./ta.js\": 51356,\n\t\"./te\": 73693,\n\t\"./te.js\": 73693,\n\t\"./tet\": 21243,\n\t\"./tet.js\": 21243,\n\t\"./tg\": 42500,\n\t\"./tg.js\": 42500,\n\t\"./th\": 55768,\n\t\"./th.js\": 55768,\n\t\"./tk\": 77761,\n\t\"./tk.js\": 77761,\n\t\"./tl-ph\": 35780,\n\t\"./tl-ph.js\": 35780,\n\t\"./tlh\": 29590,\n\t\"./tlh.js\": 29590,\n\t\"./tr\": 33807,\n\t\"./tr.js\": 33807,\n\t\"./tzl\": 93857,\n\t\"./tzl.js\": 93857,\n\t\"./tzm\": 60654,\n\t\"./tzm-latn\": 8806,\n\t\"./tzm-latn.js\": 8806,\n\t\"./tzm.js\": 60654,\n\t\"./ug-cn\": 30845,\n\t\"./ug-cn.js\": 30845,\n\t\"./uk\": 19232,\n\t\"./uk.js\": 19232,\n\t\"./ur\": 47052,\n\t\"./ur.js\": 47052,\n\t\"./uz\": 77967,\n\t\"./uz-latn\": 32233,\n\t\"./uz-latn.js\": 32233,\n\t\"./uz.js\": 77967,\n\t\"./vi\": 98615,\n\t\"./vi.js\": 98615,\n\t\"./x-pseudo\": 12320,\n\t\"./x-pseudo.js\": 12320,\n\t\"./yo\": 31313,\n\t\"./yo.js\": 31313,\n\t\"./zh-cn\": 64490,\n\t\"./zh-cn.js\": 64490,\n\t\"./zh-hk\": 55910,\n\t\"./zh-hk.js\": 55910,\n\t\"./zh-mo\": 98262,\n\t\"./zh-mo.js\": 98262,\n\t\"./zh-tw\": 44223,\n\t\"./zh-tw.js\": 44223\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;"],"names":[],"sourceRoot":"webpack:///","x_google_ignoreList":[91]}