{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/animations/fade-in-slide.animation.ts","webpack:///./src/animations/fade-in.animation.ts","webpack:///./src/animations/index.ts","webpack:///./src/animations/slide-in-out.animation.ts","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.scss","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.service.ts","webpack:///./src/app/auth.service.ts","webpack:///./src/app/autocomplete/autocomplete.component.html","webpack:///./src/app/autocomplete/autocomplete.component.scss","webpack:///./src/app/autocomplete/autocomplete.component.ts","webpack:///./src/app/campaigns/campaigns.component.html","webpack:///./src/app/campaigns/campaigns.component.scss","webpack:///./src/app/campaigns/campaigns.component.ts","webpack:///./src/app/forgot-password/forgot-password.component.html","webpack:///./src/app/forgot-password/forgot-password.component.scss","webpack:///./src/app/forgot-password/forgot-password.component.ts","webpack:///./src/app/login-request/login-request.component.html","webpack:///./src/app/login-request/login-request.component.scss","webpack:///./src/app/login-request/login-request.component.ts","webpack:///./src/app/login/login.html","webpack:///./src/app/login/login.module.ts","webpack:///./src/app/login/login.scss","webpack:///./src/app/login/login.ts","webpack:///./src/app/newpos/newpos.component.html","webpack:///./src/app/newpos/newpos.component.scss","webpack:///./src/app/newpos/newpos.component.ts","webpack:///./src/app/newpos/newpos.module.ts","webpack:///./src/app/newspot-error/newspot-error.component.html","webpack:///./src/app/newspot-error/newspot-error.component.scss","webpack:///./src/app/newspot-error/newspot-error.component.ts","webpack:///./src/app/newspot-images/newspot-images.component.html","webpack:///./src/app/newspot-images/newspot-images.component.scss","webpack:///./src/app/newspot-images/newspot-images.component.ts","webpack:///./src/app/newspot-products/newspot-products.component.html","webpack:///./src/app/newspot-products/newspot-products.component.scss","webpack:///./src/app/newspot-products/newspot-products.component.ts","webpack:///./src/app/newspot-success/newspot-success.component.html","webpack:///./src/app/newspot-success/newspot-success.component.scss","webpack:///./src/app/newspot-success/newspot-success.component.ts","webpack:///./src/app/newspot-survey/newspot-survey.component.html","webpack:///./src/app/newspot-survey/newspot-survey.component.scss","webpack:///./src/app/newspot-survey/newspot-survey.component.ts","webpack:///./src/app/newspot/newspot.component.html","webpack:///./src/app/newspot/newspot.component.scss","webpack:///./src/app/newspot/newspot.component.ts","webpack:///./src/app/newspot/newspot.module.ts","webpack:///./src/app/overview/overview.component.html","webpack:///./src/app/overview/overview.component.scss","webpack:///./src/app/overview/overview.component.ts","webpack:///./src/app/overview/overview.module.ts","webpack:///./src/app/profile/profile.component.html","webpack:///./src/app/profile/profile.component.scss","webpack:///./src/app/profile/profile.component.ts","webpack:///./src/app/ranking/ranking.component.html","webpack:///./src/app/ranking/ranking.component.scss","webpack:///./src/app/ranking/ranking.component.ts","webpack:///./src/app/searchpos/searchpos.component.html","webpack:///./src/app/searchpos/searchpos.component.scss","webpack:///./src/app/searchpos/searchpos.component.ts","webpack:///./src/app/searchpos/searchpos.module.ts","webpack:///./src/app/shared.module.ts","webpack:///./src/app/sync-bar/sync-bar.component.html","webpack:///./src/app/sync-bar/sync-bar.component.scss","webpack:///./src/app/sync-bar/sync-bar.component.ts","webpack:///./src/app/sync-bar/sync-bar.module.ts","webpack:///./src/app/tips/tips.component.html","webpack:///./src/app/tips/tips.component.scss","webpack:///./src/app/tips/tips.component.ts","webpack:///./src/dto/index.ts","webpack:///./src/dto/spotdata.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts","webpack:///./src/providers/appcache-manager/appcache-manager.ts","webpack:///./src/providers/domain-storage/domain-storage.ts","webpack:///./src/providers/geolocalization/geolocalization.ts","webpack:///./src/providers/gmaps/gmaps.ts","webpack:///./src/providers/image-processor/image-processor.ts","webpack:///./src/providers/image-processor/image-resize.ts","webpack:///./src/providers/localstorage/localstorage.ts","webpack:///./src/providers/login/login.ts","webpack:///./src/providers/remote-services/remote-services.ts","webpack:///./src/providers/translation/translation.ts","webpack:///./src/psapp-config.ts","webpack:///./src/stores/root-store.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","// import the required animation functions from the angular animations module\r\nimport { trigger, state, animate, transition, style } from '@angular/animations';\r\n\r\nexport const fadeInSlideAnimation =\r\n // trigger name for attaching this animation to an element using the [@triggerName] syntax\r\n trigger('fadeInSlideAnimation', [\r\n\r\n state('*', style({\r\n display: 'block'\r\n })),\r\n \r\n // route 'enter' transition\r\n transition(':enter', [\r\n \r\n // css styles at start of transition\r\n style({\r\n opacity: 0,\r\n position: 'relative', \r\n right: '-100%'\r\n }),\r\n\r\n // animation and styles at end of transition\r\n animate('.2s', style({ \r\n opacity: 1,\r\n right:0\r\n }))\r\n ]),\r\n ]);","// import the required animation functions from the angular animations module\r\nimport { trigger, state, animate, transition, style } from '@angular/animations';\r\n\r\nexport const fadeInAnimation =\r\n // trigger name for attaching this animation to an element using the [@triggerName] syntax\r\n trigger('fadeInAnimation', [\r\n\r\n state('*', style({\r\n display: 'block'\r\n })),\r\n\r\n // route 'enter' transition\r\n transition(':enter', [\r\n\r\n // css styles at start of transition\r\n style({\r\n opacity: 0,\r\n }),\r\n\r\n // animation and styles at end of transition\r\n animate('.2s', style({\r\n opacity: 1,\r\n }))\r\n ]),\r\n\r\n // route 'leave' transition\r\n transition(':leave', [\r\n\r\n // css styles at start of transition\r\n style({\r\n opacity: 1,\r\n }),\r\n\r\n // animation and styles at end of transition\r\n animate('.2s', style({\r\n opacity: 0,\r\n }))\r\n ]),\r\n ]);","export * from './fade-in-slide.animation';\r\nexport * from './fade-in.animation';\r\nexport * from './slide-in-out.animation';","// import the required animation functions from the angular animations module\r\nimport { trigger, state, animate, transition, style } from '@angular/animations';\r\n\r\nexport const slideInOutAnimation =\r\n // trigger name for attaching this animation to an element using the [@triggerName] syntax\r\n trigger('slideInOutAnimation', [\r\n\r\n // end state styles for route container (host)\r\n state('*', style({\r\n // the view covers the whole screen with a semi tranparent background\r\n position: 'fixed',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n backgroundColor: 'rgba(0, 0, 0, 0.8)'\r\n })),\r\n\r\n // route 'enter' transition\r\n transition(':enter', [\r\n\r\n // styles at start of transition\r\n style({\r\n // start with the content positioned off the right of the screen, \r\n // -400% is required instead of -100% because the negative position adds to the width of the element\r\n right: '-400%',\r\n\r\n // start with background opacity set to 0 (invisible)\r\n backgroundColor: 'rgba(0, 0, 0, 0)'\r\n }),\r\n\r\n // animation and styles at end of transition\r\n animate('.5s ease-in-out', style({\r\n // transition the right position to 0 which slides the content into view\r\n right: 0,\r\n\r\n // transition the background opacity to 0.8 to fade it in\r\n backgroundColor: 'rgba(0, 0, 0, 0.8)'\r\n }))\r\n ]),\r\n\r\n // route 'leave' transition\r\n transition(':leave', [\r\n // animation and styles at end of transition\r\n animate('.5s ease-in-out', style({\r\n // transition the right position to -400% which slides the content out of view\r\n right: '-400%',\r\n\r\n // transition the background opacity to 0 to fade it out\r\n backgroundColor: 'rgba(0, 0, 0, 0)'\r\n }))\r\n ])\r\n ]);","module.exports = \"
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\"","module.exports = \".header__navigation-wrapper {\\n z-index: 2 !important; }\\n\\n.header-container {\\n position: fixed;\\n z-index: 101;\\n width: 100%; }\\n\\n.header-logo img {\\n height: 30px;\\n width: 30px; }\\n\\n.header__profile__image,\\n.header__profile__icon {\\n border-radius: 100%;\\n margin-top: .5rem;\\n height: 30px;\\n width: 30px;\\n -webkit-filter: brightness(0) invert(1) grayscale(100%);\\n filter: brightness(0) invert(1) grayscale(100%); }\\n\\n.header__profile__image {\\n background-color: rgba(255, 255, 255, 0.4); }\\n\\n.app__body {\\n margin-top: 62px; }\\n\\n.header__profile__container {\\n position: absolute;\\n top: 10px;\\n right: 10px;\\n z-index: 301;\\n border-radius: 100%; }\\n\"","import { Component } from '@angular/core';\r\nimport { Router, Routes, NavigationEnd } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport configApp from 'psapp-config';\r\nimport { AppService } from './app.service';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { Breakpoint, MessageService } from 'rb-core-library';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent {\r\n\r\n //@ViewChild(\"sidebar\") sidebar: any;//SidebarComponent;\r\n\r\n title = 'PS APP';\r\n menuItems: Routes = [];\r\n showMenu: boolean = true;\r\n user: any;\r\n\r\n profileImageSrc: string;\r\n\r\n public stickyBreakpoints = [ Breakpoint.SM ];\r\n \r\n constructor(\r\n private loginProvider: LoginProvider,\r\n private router: Router,\r\n private translateService: TranslateService,\r\n private translationProvider: TranslationProvider,\r\n private appService: AppService,\r\n private domainStorageProvider: DomainStorageProvider,\r\n public remoteServicesProvider: RemoteServicesProvider,\r\n public messageService: MessageService\r\n ) {\r\n\r\n this.messageService.popupMessage = null;\r\n\r\n this.menuItems = this.router.config.filter(x => x.data && (x.data.show === undefined || x.data.show));\r\n\r\n this.appService.onMainMenuEvent.subscribe((show) => {\r\n this.showMenu = show;\r\n });\r\n\r\n //WebTrekk\r\n this.appService.InitWebTrekk();\r\n this.router.events.subscribe( e => {\r\n if (e instanceof NavigationEnd) {\r\n var url = e.url;\r\n \r\n //ignore ranking \r\n if (!url.startsWith(\"/ranking\") && !url.startsWith(\"/login\")) {\r\n this.appService.SetWebTrekkPageView(url);\r\n }\r\n }\r\n });\r\n\r\n //handle http errors\r\n this.remoteServicesProvider.httpErrors.subscribe((err:HttpErrorResponse)=>{\r\n if(err.status == 401){\r\n this.messageService.addMessage({\r\n type: 'danger',\r\n text: this.translateService.instant(\"App.AccessDenied\"),\r\n timeout: 3000\r\n });\r\n\r\n this.loginProvider.logout();\r\n this.router.navigateByUrl(\"/login\");\r\n }\r\n else if(err.status == 500){\r\n this.messageService.addMessage({\r\n type: 'danger',\r\n text: this.translateService.instant(\"App.UnexpectedError\"),\r\n timeout: 3000\r\n });\r\n }\r\n else {\r\n this.messageService.addMessage({\r\n type: 'danger',\r\n text: this.translateService.instant(\"App.TimeoutError\"),\r\n timeout: 3000\r\n });\r\n }\r\n })\r\n\r\n this.loadGmaps();\r\n }\r\n\r\n toggleSidebar() {\r\n //this.sidebar._toggleSidebar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.user = this.domainStorageProvider.rootStore.loginProvider;\r\n this.translateService.setDefaultLang(this.translationProvider.getDefaultLang());\r\n this.translateService.use(this.translationProvider.getCurrentLang());\r\n }\r\n\r\n private loadGmaps() {\r\n let GOOGLE_MAP_KEY = configApp.googleApiKey;\r\n let script = document.createElement(\"script\");\r\n script.type = \"text/javascript\";\r\n script.src =\r\n \"https://maps.googleapis.com/maps/api/js?v=quarterly\" +\r\n \"&key=\" +\r\n GOOGLE_MAP_KEY +\r\n \"&libraries=places\"; //& needed\r\n document.body.appendChild(script);\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { ErrorHandler, NgModule } from \"@angular/core\";\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { SharedModule } from \"./shared.module\";\r\nimport { MyErrorHandler } from \"./MyErrorHandler\";\r\nimport { AppComponent } from './app.component';\r\nimport { TranslationProvider } from '../providers/translation/translation';\r\nimport { AppcacheManagerProvider } from '../providers/appcache-manager/appcache-manager';\r\nimport { NgxCurrencyModule } from \"ngx-currency\";\r\n\r\nimport { OverviewComponent } from './overview/overview.component';\r\nimport { ProfileComponent } from './profile/profile.component';\r\nimport { TipsComponent } from './tips/tips.component';\r\nimport { RankingComponent } from './ranking/ranking.component';\r\nimport { LoginPage } from './login/login';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LoginPageModule } from './login/login.module';\r\nimport { CommonModule, LocationStrategy, HashLocationStrategy } from '@angular/common';\r\nimport { OverviewModule } from './overview/overview.module';\r\nimport { CampaignsComponent } from './campaigns/campaigns.component';\r\nimport { NewSpotComponent } from './newspot/newspot.component';\r\nimport { AppService } from './app.service';\r\nimport { NewspotImagesComponent } from './newspot-images/newspot-images.component';\r\nimport { NewspotSurveyComponent } from './newspot-survey/newspot-survey.component';\r\nimport { NewspotProductsComponent } from './newspot-products/newspot-products.component';\r\nimport { NewposComponent } from './newpos/newpos.component';\r\nimport { SearchposComponent } from './searchpos/searchpos.component';\r\nimport { SearchposModule } from './searchpos/searchpos.module';\r\nimport { NewposModule } from './newpos/newpos.module';\r\nimport { NewspotSuccessComponent } from './newspot-success/newspot-success.component';\r\nimport { AuthGuardService } from './auth.service';\r\nimport { NewspotModule } from './newspot/newspot.module';\r\nimport { NewspotErrorComponent } from './newspot-error/newspot-error.component';\r\nimport { ImageResizeProvider } from 'providers/image-processor/image-resize';\r\nimport { ImageProcessorProvider } from 'providers/image-processor/image-processor';\r\nimport { LoginRequestComponent } from './login-request/login-request.component';\r\nimport { ForgotPasswordComponent } from './forgot-password/forgot-password.component';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\nconst appRoutes: Routes = [\r\n { path: '', redirectTo: '/home', pathMatch: 'full' },\r\n { path: 'login', component: LoginPage, data: { title: 'Login', show: false } },\r\n { path: 'home', component: OverviewComponent, data: { title: 'Home' }, canActivate: [AuthGuardService] },\r\n { path: 'login-request', component: LoginRequestComponent, data: { title: 'Login Request', show: false } },\r\n { path: 'forgot-password', component: ForgotPasswordComponent, data: { title: 'Forgot Password', show: false } },\r\n { path: 'profile', component: ProfileComponent, data: { title: 'Profile' }, canActivate: [AuthGuardService] },\r\n { path: 'tips', component: TipsComponent, data: { title: 'Tips' }, canActivate: [AuthGuardService] },\r\n { path: 'ranking', component: RankingComponent, data: { title: 'Ranking' }, canActivate: [AuthGuardService] },\r\n { path: 'ranking/:campaignName/:campaignId', component: RankingComponent, data: { title: 'Ranking', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'campaigns', component: CampaignsComponent, data: { title: 'Campaigns' }, canActivate: [AuthGuardService] },\r\n { path: 'newspot', component: NewSpotComponent, data: { title: 'New Check', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'newspot/images', component: NewspotImagesComponent, data: { title: 'Images', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'newspot/survey', component: NewspotSurveyComponent, data: { title: 'Survey', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'newspot/products', component: NewspotProductsComponent, data: { title: 'Products', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'newspot/success', component: NewspotSuccessComponent, data: { title: 'Success', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'newspot/error/:statusCode', component: NewspotErrorComponent, data: { title: 'Error', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'searchpos', component: SearchposComponent, data: { title: 'Search Pos', show: false }, canActivate: [AuthGuardService] },\r\n { path: 'newpos', component: NewposComponent, data: { title: 'New Pos', show: false }, canActivate: [AuthGuardService] },\r\n];\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n ProfileComponent,\r\n TipsComponent,\r\n RankingComponent,\r\n CampaignsComponent,\r\n LoginRequestComponent,\r\n ForgotPasswordComponent,\r\n ],\r\n imports: [\r\n SearchposModule,\r\n NewposModule,\r\n SharedModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n NewspotModule,\r\n LoginPageModule,\r\n OverviewModule,\r\n RouterModule.forRoot(appRoutes, {\r\n useHash: true,\r\n scrollPositionRestoration: 'enabled' \r\n })\r\n ],\r\n providers: [\r\n //{ provide: ErrorHandler, useClass: MyErrorHandler },\r\n AppService,\r\n TranslationProvider,\r\n AppcacheManagerProvider,\r\n ImageResizeProvider,\r\n ImageProcessorProvider,\r\n CookieService, \r\n AuthGuardService],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\nimport configApp from 'psapp-config';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { environment } from 'environments/environment';\r\n\r\ndeclare var window: any;\r\n\r\n@Injectable()\r\nexport class AppService {\r\n\r\n onMainMenuEvent = new EventEmitter();\r\n\r\n constructor(\r\n private loginProvider: LoginProvider,\r\n public cookieService: CookieService\r\n ) { }\r\n\r\n url2contentId(url: string) {\r\n var contentId = null;\r\n if (url) {\r\n var page = url.replace(/\\./g, \"_\").replace(/\\s/g, \"_\").replace(/\\//g, \".\").replace(/\\.{2,}/g, \".\").toLowerCase().split(\";\")[0];\r\n if (page && page !== \".\") {\r\n contentId = configApp.webTrekkPagePrefix + page;\r\n }\r\n }\r\n return contentId;\r\n };\r\n\r\n InitWebTrekk(){\r\n this.SetSentUrmCategory(\"0\");\r\n window._tiConfig = window._tiConfig || {\r\n tiDomain: 'responder.wt-safetag.com',\r\n tiId: environment.webTrekkTiId,\r\n //customDomain: 'sub.domain.tld',\r\n //customPath: 'js/container_script.js', \r\n option: {}\r\n };\r\n \r\n //TagIntegration loader\r\n window._webTrekkInit(window,document,\"script\",window._tiConfig);\r\n }\r\n\r\n GetWebTrekkCookieParams() {\r\n var customerId = this.loginProvider.isLogged() ? this.loginProvider.userId : ''\r\n var urmCategory: any = '';\r\n\r\n var webTrekkCookie = this.cookieService.get(\"WebTrekk_Cookie\");\r\n\r\n if (webTrekkCookie != null) {\r\n var values = decodeURIComponent(webTrekkCookie).split(\";\");\r\n customerId = values[0];\r\n\r\n urmCategory = {};\r\n for (var i = 1; i < values.length; i++) {\r\n urmCategory[i] = values[i];\r\n }\r\n }\r\n return {\r\n customerId: customerId,\r\n urmCategory: urmCategory\r\n }\r\n }\r\n\r\n SetSentUrmCategory(sent:string = \"0\"){\r\n sessionStorage.setItem(\"sentUrmCategory\", sent);\r\n }\r\n\r\n SetWebTrekkPageView(url: string) {\r\n \r\n var siteURL = url == \"/\" ? \"/home\" : url;\r\n \r\n var contentId = this.url2contentId(siteURL);\r\n if (contentId) {\r\n var cookieParams = this.GetWebTrekkCookieParams();\r\n \r\n //console.log(\"PAGE contentId: \" + contentId, \" / customerId: \" + cookieParams.customerId, \" / urmCategory: \" + cookieParams.urmCategory);\r\n /*\r\n window._ti = window._ti || {};\r\n window._ti[\"contentId\"] = contentId;\r\n window._ti[\"customerId\"] = cookieParams.customerId;\r\n if(cookieParams.urmCategory)\r\n window._ti['urmCategory'] = cookieParams.urmCategory;\r\n */\r\n var contentGroups = {};\r\n var contentGroup = contentId.split(\".\");\r\n //do not send last group \r\n for (var i = 0; i < contentGroup.length; i++) {\r\n contentGroups[i + 1] = contentGroup[i];\r\n }\r\n var webTrekkContent:any = {\r\n contentId: contentId, //Page Name\r\n customerId: cookieParams.customerId, //Custom visitor IDs\r\n //customParameter: '', //Page parameters\r\n contentGroup: contentGroups, //Content groups\r\n };\r\n\r\n //URM categories\r\n if(sessionStorage.getItem(\"sentUrmCategory\") != \"1\" && cookieParams.urmCategory != \"\"){\r\n webTrekkContent.urmCategory = cookieParams.urmCategory;\r\n this.SetSentUrmCategory(\"1\");\r\n }\r\n\r\n // Send a page call\r\n window.wts.push([\r\n 'send',\r\n 'page',\r\n webTrekkContent\r\n ]);\r\n\r\n //console.log(\"webTrekkContent:\", webTrekkContent);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router } from '@angular/router';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { GeolocalizationProvider } from 'providers/geolocalization/geolocalization';\r\n\r\n@Injectable()\r\nexport class AuthGuardService implements CanActivate {\r\n\r\n constructor(\r\n public loginProvider: LoginProvider,\r\n public domainStorageProvider:DomainStorageProvider,\r\n public geolocalizationProvider: GeolocalizationProvider,\r\n public router: Router\r\n ) { \r\n\r\n }\r\n\r\n canActivate(): boolean {\r\n if (!this.loginProvider.isLogged() || !this.loginProvider.isConfigLoaded()) {\r\n this.router.navigate(['login']);\r\n return false;\r\n }\r\n else if(!this.loginProvider.isConfigLoaded()){\r\n\r\n this.geolocalizationProvider.stopWatcher();\r\n this.geolocalizationProvider.startWatcher();\r\n\r\n this.geolocalizationProvider.currentPosition.subscribe(async (value) => {\r\n if(value){\r\n await this.domainStorageProvider.getConfigData();\r\n\r\n let groups = this.domainStorageProvider.startupLoadData();\r\n if (groups.length > 0) {\r\n this.loginProvider.saveStorage();\r\n }\r\n else{\r\n this.router.navigate(['login']);\r\n }\r\n }\r\n });\r\n }\r\n return true;\r\n }\r\n\r\n}","module.exports = \"
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{item.name}}\\r\\n {{item.address}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{'SearchPosPage.NoResultsFound' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".listGroup {\\n border: 1px solid #d2cfd0;\\n border-bottom: 0;\\n margin-top: 1rem;\\n width: 100%; }\\n .listGroup .listItem {\\n display: inline-block;\\n vertical-align: middle;\\n font-family: \\\"BullText\\\", sans-serif;\\n font-size: 1rem;\\n border-bottom: 1px solid #d2cfd0;\\n border-radius: 2px;\\n color: rgba(0, 0, 0, 0.87);\\n padding: 6px 9px;\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n background-color: #f7f6f6;\\n outline: none;\\n width: 100%; }\\n .listGroup .listItem .name,\\n .listGroup .listItem .address {\\n width: 100%;\\n display: inline-block;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis; }\\n .listGroup .listItem .address {\\n color: #938E8F;\\n font-size: .9rem; }\\n .listGroup.fixedItems .icon {\\n color: #11388D; }\\n .searchInput .form__input {\\n padding: 18px 9px !important; }\\n\"","import { Component, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { GmapsProvider } from 'providers/gmaps/gmaps';\r\nimport { GeolocalizationProvider } from 'providers/geolocalization/geolocalization';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { fadeInAnimation } from 'animations';\r\nimport * as _ from \"lodash\";\r\n\r\n@Component({\r\n selector: 'app-autocomplete',\r\n templateUrl: './autocomplete.component.html',\r\n styleUrls: ['./autocomplete.component.scss'],\r\n\r\n animations: [fadeInAnimation],\r\n})\r\nexport class AutocompleteComponent implements OnInit {\r\n\r\n isInputFocus: boolean = false;\r\n showSearchResults: boolean = false;\r\n isLoading: boolean = false;\r\n searchResults: any = [];\r\n searchTimer: any = null;\r\n\r\n @Output(\"search-result-click\") searchResultClick = new EventEmitter();\r\n @Output(\"my-location-click\") myLocationClick = new EventEmitter();\r\n @Output(\"choose-from-map-click\") chooseFromMapClick = new EventEmitter();\r\n @Output(\"input-focus\") onInputFocus = new EventEmitter();\r\n\r\n constructor(\r\n public gmaps: GmapsProvider,\r\n public geolocalizationProvider: GeolocalizationProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n ) {\r\n\r\n\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onInputReset($event) {\r\n this.showSearchResults = false;\r\n this.isInputFocus = true;\r\n }\r\n\r\n onChooseFromMapClick($event) {\r\n this.onInputFocusOut($event);\r\n this.chooseFromMapClick.emit();\r\n }\r\n\r\n onInputFocusIn($event) {\r\n this.onInputFocus.emit();\r\n this.onInputFocusOut($event)\r\n this.isInputFocus = true;\r\n this.onInputChange($event);\r\n }\r\n\r\n onInputFocusOut($event) {\r\n this.isInputFocus = false;\r\n }\r\n\r\n onSearchResultClick(item) {\r\n this.searchResultClick.emit(item);\r\n this.showSearchResults = false;\r\n this.isInputFocus = false;\r\n };\r\n\r\n onMyLocationClick() {\r\n this.myLocationClick.emit();\r\n this.showSearchResults = false;\r\n this.isInputFocus = false;\r\n }\r\n\r\n async onInputChange($event) {\r\n\r\n let query = $event && $event.target ? $event.target.value : null;\r\n\r\n this.isLoading = false;\r\n\r\n if (this.searchTimer) {\r\n clearInterval(this.searchTimer);\r\n }\r\n if (query != null && query.length > 2) {\r\n this.isInputFocus = false;\r\n this.showSearchResults = true;\r\n this.isLoading = true;\r\n this.searchTimer = _.delay(async () => {\r\n\r\n try {\r\n let results = await this.gmaps.searchPlaces($event.target.value);\r\n this.searchResults = _.take(results, 5);\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n\r\n this.isLoading = false;\r\n }, 300);\r\n }\r\n else {\r\n this.searchResults = [];\r\n this.showSearchResults = false;\r\n this.isInputFocus = true;\r\n }\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

Choose Campaign

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

{{item.shortName}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".content {\\n padding-top: 1rem;\\n display: inline-block;\\n width: 100%; }\\n\\n.card {\\n background: #fff;\\n border: 1px solid #e8e7e7;\\n border-radius: 2px;\\n position: relative;\\n margin-bottom: 15px;\\n display: flex;\\n flex-direction: column;\\n max-height: 300px;\\n position: relative;\\n height: calc(100% - 15px);\\n width: 95%;\\n margin: 0 auto;\\n padding: 30px; }\\n\\n.tipContainer {\\n background-color: #fff;\\n padding: 1.5rem;\\n text-align: center;\\n margin: 0 1rem 1rem 1rem;\\n font-family: \\\"Bull\\\", sans-serif;\\n font-size: 18px;\\n height: 180px;\\n font-weight: 800;\\n background-size: cover;\\n letter-spacing: .09px;\\n line-height: 1.25;\\n text-transform: uppercase;\\n border: 0; }\\n\\n.tipContainer h3 {\\n margin-bottom: 0;\\n text-align: left; }\\n\"","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppService } from 'app/app.service';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { LocalstorageProvider } from 'providers/localstorage/localstorage';\r\nimport { GetServiceUrl } from 'psapp-config';\r\n\r\n@Component({\r\n\tselector: 'app-campaigns',\r\n\ttemplateUrl: './campaigns.component.html',\r\n\tstyleUrls: ['./campaigns.component.scss'],\r\n\r\n\tanimations: [fadeInSlideAnimation],\r\n\thost: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class CampaignsComponent implements OnInit, OnDestroy {\r\n\r\n\tcompaigns: any[];\r\n imageService = GetServiceUrl(\"ImageCampaign\");\r\n isLoading:boolean = false;\r\n\r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate appService: AppService,\r\n\t\tprivate domainStorageProvider: DomainStorageProvider,\r\n\t\tpublic storage: LocalstorageProvider\r\n\t) {\r\n\t\tthis.showHideMenu(false);\r\n\t}\r\n\r\n\tngOnInit() {\r\n this.fetchData();\r\n }\r\n \r\n async fetchData(){\r\n this.isLoading = true;\r\n let selectedGroup = this.domainStorageProvider.rootStore.selectedGroupId.value;\r\n //refresh groups\r\n await this.domainStorageProvider.getConfigData(!selectedGroup);\r\n this.compaigns = this.domainStorageProvider.rootStore.userGroups;\r\n this.isLoading = false;\r\n }\r\n\r\n\tngOnDestroy() {\r\n\t\tthis.showHideMenu(true);\r\n\t}\r\n\r\n\tshowHideMenu(show) {\r\n\t\tthis.appService.onMainMenuEvent.emit(show);\r\n\t}\r\n\r\n\tonSelectCampaign(campaign: any) {\r\n\t\t//set new selected campaign id\r\n\t\tthis.domainStorageProvider.rootStore.selectedGroupId.next(campaign.id);\r\n\r\n\t\t//persist selection\r\n\t\tthis.storage.write(\"selectedGroup\", JSON.stringify({ group: this.domainStorageProvider.rootStore.getSelectedGroup() }));\r\n\r\n\t\tthis.router.navigate([\"/\"]);\r\n\t}\r\n\r\n\tback() {\r\n\t\tthis.router.navigate([\"/\"]);\r\n\t}\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{'ForgotPasswordPage.Title' | translate}}

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

{{'ForgotPasswordPage.SuccessMessage' | translate}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".submitContainer {\\n text-align: center; }\\n .submitContainer button {\\n min-width: 140px;\\n text-transform: uppercase; }\\n .margin-bottom {\\n margin-bottom: 1rem; }\\n .redirectLink {\\n display: inline;\\n word-wrap: break-word;\\n white-space: normal; }\\n\"","import { GeolocalizationProvider } from \"providers/geolocalization/geolocalization\";\r\nimport { DomainStorageProvider } from \"providers/domain-storage/domain-storage\";\r\nimport { RemoteServicesProvider } from \"providers/remote-services/remote-services\";\r\nimport { LoginProvider } from \"providers/login/login\";\r\nimport { Component, Input, ViewChild, OnInit } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { NgForm } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { AppService } from \"app/app.service\";\r\n\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styleUrls: ['./forgot-password.component.scss']\r\n })\r\n export class ForgotPasswordComponent implements OnInit {\r\n @ViewChild(\"loginForm\") loginForm: NgForm;\r\n \r\n data = {\r\n email: ''\r\n }\r\n\r\n loadingComponent: any = null;\r\n isLoading: boolean = false;\r\n error: any = null;\r\n success: boolean = false;\r\n redirect: string = null;\r\n\r\n constructor(\r\n private appService: AppService,\r\n private router: Router,\r\n public loginProvider: LoginProvider,\r\n private translate: TranslateService,\r\n public remoteServicesProvider: RemoteServicesProvider,\r\n public domainStorageProvider: DomainStorageProvider,\r\n public geolocalizationProvider: GeolocalizationProvider\r\n ) {\r\n this.showHideMenu(false);\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n \r\n async submit() {\r\n this.isLoading = true;\r\n this.error = null;\r\n this.redirect = null;\r\n this.success = false;\r\n try{\r\n await this.remoteServicesProvider.sendForgotPasswordRequest(this.data);\r\n \r\n this.success = true;\r\n this.clearForm();\r\n }\r\n catch(e){\r\n if(e && e.status == 400){\r\n this.error = this.translate.instant(\"ForgotPasswordPage.ErrorMessage\");\r\n }\r\n else{\r\n this.error = this.translate.instant(\"App.UnexpectedError\");\r\n }\r\n }\r\n \r\n this.isLoading = false;\r\n }\r\n\r\n clearForm() {\r\n if (this.loginForm)\r\n this.loginForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{'LoginRequestPage.Title' | translate}}

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

{{'LoginRequestPage.RequestSuccessTitle' | translate}}

\\r\\n

{{'LoginRequestPage.RequestSuccessMessage' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".logoContainer {\\n text-align: center; }\\n .logoContainer img {\\n max-width: 8rem;\\n max-height: 8rem;\\n display: inline-block;\\n margin-top: 2rem;\\n margin-bottom: 2.5rem; }\\n input[name='user'] {\\n margin-bottom: 1.5rem; }\\n input[name='password'] {\\n margin-bottom: .5rem; }\\n .forgotPassword {\\n margin-bottom: 2rem; }\\n .forgotPassword a {\\n color: #9B9B9B; }\\n .submitContainer {\\n text-align: center; }\\n .submitContainer button {\\n min-width: 140px;\\n text-transform: uppercase; }\\n .margin-bottom {\\n margin-bottom: 1rem; }\\n\"","import { GeolocalizationProvider } from \"providers/geolocalization/geolocalization\";\r\nimport { DomainStorageProvider } from \"providers/domain-storage/domain-storage\";\r\nimport { RemoteServicesProvider } from \"providers/remote-services/remote-services\";\r\nimport { LoginProvider } from \"providers/login/login\";\r\nimport { Component, Input, ViewChild, OnInit } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { NgForm } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { AppService } from \"app/app.service\";\r\nimport { TranslationProvider } from \"providers/translation/translation\";\r\n\r\n@Component({\r\n selector: 'app-login-request',\r\n templateUrl: './login-request.component.html',\r\n styleUrls: ['./login-request.component.scss']\r\n})\r\nexport class LoginRequestComponent implements OnInit {\r\n @ViewChild(\"loginForm\") loginForm: NgForm;\r\n \r\n data = {\r\n name: '',\r\n surname: '',\r\n email: '',\r\n company: '',\r\n phoneNumber: '',\r\n CPF: '',\r\n lang: '',\r\n }\r\n\r\n loadingComponent: any = null;\r\n isLoading: boolean = false;\r\n error: any = null;\r\n success: boolean = false;\r\n\r\n constructor(\r\n private appService: AppService,\r\n private router: Router,\r\n public loginProvider: LoginProvider,\r\n private translate: TranslateService,\r\n private translationProvider:TranslationProvider,\r\n public remoteServicesProvider: RemoteServicesProvider,\r\n public domainStorageProvider: DomainStorageProvider,\r\n public geolocalizationProvider: GeolocalizationProvider\r\n ) {\r\n this.showHideMenu(false);\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n \r\n async submit() {\r\n this.isLoading = true;\r\n this.error = null;\r\n this.success = false;\r\n try{\r\n this.data.lang = this.translationProvider.getCurrentLang();\r\n await this.remoteServicesProvider.sendLoginRequest(this.data);\r\n \r\n this.success = true;\r\n this.clearForm();\r\n }\r\n catch(e){\r\n if(e && e.status == 400){\r\n if(e.error && e.error.message == \"email_exists\"){\r\n this.error = this.translate.instant(\"LoginRequestPage.EmailAlreadyExists\");\r\n }\r\n else{\r\n this.error = this.translate.instant(\"LoginRequestPage.Error\");\r\n }\r\n }\r\n else{\r\n this.error = this.translate.instant(\"App.UnexpectedError\");\r\n }\r\n }\r\n \r\n this.isLoading = false;\r\n }\r\n\r\n clearForm() {\r\n if (this.loginForm)\r\n this.loginForm.reset();\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

LOGIN

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n ou\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\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 { SharedModule } from \"./../../app/shared.module\";\r\nimport { LoginProvider } from \"../../providers/login/login\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { LoginPage } from \"./login\";\r\nimport { RemoteServicesProvider } from \"providers/remote-services/remote-services\";\r\nimport { LocalstorageProvider } from \"providers/localstorage/localstorage\";\r\nimport { DomainStorageProvider } from \"providers/domain-storage/domain-storage\";\r\nimport { GeolocalizationProvider } from \"providers/geolocalization/geolocalization\";\r\nimport { RootStore } from \"stores/root-store\";\r\n\r\n\r\n@NgModule({\r\n\tdeclarations: [LoginPage],\r\n\timports: [\r\n\t\tSharedModule\r\n\t],\r\n\texports: [LoginPage],\r\n\tproviders: [\r\n\t\tLoginProvider,\r\n\t\tRemoteServicesProvider,\r\n\t\tLocalstorageProvider,\r\n\t\tRemoteServicesProvider,\r\n\t\tDomainStorageProvider,\r\n\t\tGeolocalizationProvider,\r\n\t\tRootStore\r\n\t]\r\n})\r\nexport class LoginPageModule { }\r\n","module.exports = \".logoContainer {\\n text-align: center; }\\n .logoContainer img {\\n max-width: 8rem;\\n max-height: 8rem;\\n display: inline-block;\\n margin-top: 2rem;\\n margin-bottom: 2.5rem; }\\n form {\\n background: #fff;\\n width: 98%;\\n margin: 0 auto;\\n border-radius: 8px;\\n padding: 45px;\\n max-width: 485px; }\\n .submitContainer a {\\n width: 100%;\\n background: #1b6aee;\\n color: #fff;\\n border: 0;\\n padding: 10px;\\n border-radius: 30px; }\\n input[name='user'] {\\n margin-bottom: 1.5rem;\\n display: inline-block;\\n height: 32px;\\n vertical-align: middle;\\n font-family: 'BullText';\\n font-size: 15px;\\n border: 1px solid #d2cfd0;\\n border-radius: 6px;\\n background: #fff;\\n color: rgba(0, 0, 0, 0.87);\\n line-height: 18px;\\n padding: 20px 9px;\\n width: 100%;\\n margin-bottom: 20px;\\n font-weight: 400; }\\n input[name='password'] {\\n margin-bottom: .5rem;\\n display: inline-block;\\n height: 32px;\\n vertical-align: middle;\\n font-family: 'BullText';\\n font-size: 15px;\\n border: 1px solid #d2cfd0;\\n border-radius: 6px;\\n background: #fff;\\n color: rgba(0, 0, 0, 0.87);\\n line-height: 18px;\\n padding: 20px 9px;\\n width: 100%;\\n margin-bottom: 20px;\\n font-weight: 400; }\\n .forgotPassword {\\n margin-bottom: 0;\\n margin-top: 2em; }\\n .forgotPassword a {\\n color: #00162b; }\\n .submitContainer {\\n text-align: right;\\n margin: 1rem 0; }\\n .submitContainer button {\\n min-width: 72px;\\n background: transparent;\\n color: #000f1e;\\n border: 1px solid #000f1e33;\\n font-size: 17px;\\n padding: 8px 44px;\\n /* opacity: .6; */\\n text-transform: capitalize;\\n font-family: 'bull';\\n font-weight: 500;\\n border-radius: 30px; }\\n .submitContainer button:hover {\\n background: #000f1e0d; }\\n .loginContainer {\\n padding: 2rem; }\\n .flex {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n padding: 33px 0; }\\n .line {\\n width: 45%;\\n border-bottom: 1px solid #e8e7e7; }\\n form span {\\n color: #e8e7e7;\\n display: inline-block;\\n padding: 12px;\\n font-size: 20px; }\\n\"","import { GeolocalizationProvider } from \"providers/geolocalization/geolocalization\";\r\nimport { DomainStorageProvider } from \"providers/domain-storage/domain-storage\";\r\nimport { RemoteServicesProvider } from \"providers/remote-services/remote-services\";\r\nimport { LoginProvider } from \"providers/login/login\";\r\nimport { Component, Input, ViewChild, OnInit } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { NgForm } from \"@angular/forms\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { AppService } from \"app/app.service\";\r\n\r\n//declare var require: any;\r\n\r\n@Component({\r\n selector: \"app-login\",\r\n templateUrl: \"login.html\",\r\n styleUrls: ['./login.scss']\r\n})\r\nexport class LoginPage implements OnInit {\r\n @ViewChild(\"loginForm\") loginForm: NgForm;\r\n @Input() login: string = '';\r\n @Input() password: string = '';\r\n\r\n loadingComponent: any = null;\r\n isLoading: boolean = false;\r\n error: any = null;\r\n\r\n constructor(\r\n private appService: AppService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public loginProvider: LoginProvider,\r\n private translate: TranslateService,\r\n public remoteServicesProvider: RemoteServicesProvider,\r\n public domainStorageProvider: DomainStorageProvider,\r\n public geolocalizationProvider: GeolocalizationProvider\r\n ) {\r\n this.showHideMenu(false);\r\n }\r\n\r\n ngOnInit() {\r\n this.geolocalizationProvider.stopWatcher();\r\n this.geolocalizationProvider.startWatcher();\r\n this.loadLogin();\r\n\r\n this.route.queryParams\r\n .subscribe(params => {\r\n \r\n if(params.sso && params.sso != \"0\") {\r\n this.isLoading = true;\r\n this.loginProvider\r\n .doLoginSaml(params.sso)\r\n .then(success => {\r\n if(success){\r\n this.startupLoadData();\r\n }\r\n else {\r\n this.presentError(\r\n this.translate.instant(\"LoginPage.LoginModalTitle\"),\r\n this.translate.instant(\"LoginPage.LoginInvalidGroupModalSubTitle\"),\r\n this.translate.instant(\"App.DismissButton\")\r\n );\r\n }\r\n this.isLoading = false;\r\n }).catch(reason => {\r\n this.isLoading = false;\r\n });\r\n }\r\n else if(params.sso === \"0\"){\r\n this.presentError(\r\n this.translate.instant(\"LoginPage.LoginModalTitle\"),\r\n params.msg ? params.msg : this.translate.instant(\"LoginPage.LoginInvalidGroupModalSubTitle\"),\r\n this.translate.instant(\"App.DismissButton\")\r\n );\r\n }\r\n }\r\n );\r\n }\r\n/*\r\n loginClickTrack(){\r\n wts.push(['send', 'click', {linkId:'akitonsname',customClickParameter:{1:'200.51',5:'green'}}]\r\n ts.push([\r\n 'send',\r\n 'click', \r\n { \r\n linkId: 'aktionsname',\r\n customClickParameter: {\r\n 1: 'teaser',2: 'top_position' }\r\n }\r\n ]);\r\n }\r\n*/\r\n async loadLogin() {\r\n if (\r\n this.loginProvider.isLogged() && (await this.validateGeolocalizationApi())\r\n ) {\r\n this.isLoading = true;\r\n //we already have a token, try to use it\r\n await this.geolocalizationProvider.currentPosition.subscribe(async (value) => {\r\n if (value) {\r\n await this.domainStorageProvider.getConfigData()\r\n .then(groups => {\r\n this.startupLoadData();\r\n });\r\n }\r\n });\r\n\r\n this.isLoading = false;\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n async doLogin() {\r\n let passData = this.password;\r\n let loginData = this.login;\r\n\r\n this.isLoading = true;\r\n if (await this.validateGeolocalizationApi()) {\r\n let login = await this.domainStorageProvider\r\n .doLogin(loginData, passData)\r\n .catch(data => {\r\n //invalid login error\r\n if (data && data.status === 401) {\r\n this.presentError(\r\n this.translate.instant(\"LoginPage.LoginModalTitle\"),\r\n this.translate.instant(\"LoginPage.LoginModalSubTitle\"),\r\n this.translate.instant(\"App.DismissButton\")\r\n );\r\n }\r\n else {\r\n //timeout error\r\n this.presentError(\r\n this.translate.instant(\"App.ErrorLabel\"),\r\n this.translate.instant(\"App.TimeoutError\"),\r\n this.translate.instant(\"App.DismissButton\")\r\n );\r\n }\r\n return -1;\r\n });\r\n this.clearForm();\r\n if (login !== -1) {\r\n this.startupLoadData();\r\n }\r\n }\r\n this.isLoading = false;\r\n }\r\n\r\n private startupLoadData() {\r\n let groups = this.domainStorageProvider.startupLoadData();\r\n if (groups && groups.length > 0) {\r\n this.loginProvider.saveStorage();\r\n\r\n //success\r\n this.router.navigate([\"/\"]);\r\n\r\n } else {\r\n this.presentError(\r\n this.translate.instant(\"LoginPage.LoginModalTitle\"),\r\n this.translate.instant(\"LoginPage.LoginInvalidGroupModalSubTitle\"),\r\n this.translate.instant(\"App.DismissButton\")\r\n );\r\n this.loginProvider.logout();\r\n }\r\n }\r\n\r\n async validateGeolocalizationApi() {\r\n if (await this.geolocalizationProvider.isBlocked()) {\r\n this.presentError(\r\n this.translate.instant(\"LoginPage.LoginModalTitle\"),\r\n this.translate.instant(\"LoginPage.GeolocalizationBlockedMessage\"),\r\n this.translate.instant(\"App.DismissButton\")\r\n );\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n clearForm() {\r\n if (this.loginForm)\r\n this.loginForm.reset();\r\n }\r\n\r\n presentError(title, subtitle, button, action = null) {\r\n this.error = subtitle;\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{'SpotPage.Title' | translate}}

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

{{'SpotPage.NamePOS' | translate}}

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

{{'SpotPage.ChooseCategory' | translate}} *

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

{{item[\\\"type\\\" + translationProvider.getLanguageName()]}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n * {{ \\\"App.RequiredField\\\" | translate }}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".content {\\n margin-bottom: 74px;\\n display: inline-block;\\n width: 100%; }\\n\\n.footerbar {\\n display: block;\\n box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);\\n background: #fff; }\\n\\n.footerbar .bottomRow {\\n padding: 1.5rem; }\\n\\n.form__input {\\n margin-bottom: .5rem; }\\n\\n.form__label span {\\n color: #00162b; }\\n\\n.chooseCategory {\\n padding: 1rem; }\\n\\n.chooseCategory h3 .required {\\n color: #00162b;\\n font-size: 1rem; }\\n\\n.required-label {\\n color: #363334;\\n font-size: .9rem;\\n display: inline-block;\\n margin-bottom: 1rem; }\\n\\n.swiper-slide {\\n width: 100%; }\\n\\n.categoryContainer {\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n background: #fff;\\n display: block;\\n width: auto;\\n height: 100px;\\n margin: 0 5px 3rem 5px;\\n text-align: center;\\n padding: 1.5rem 0; }\\n\\n.categoryContainer .icon {\\n color: #11388D;\\n max-width: 60px;\\n max-height: 60px;\\n margin-bottom: 1rem; }\\n\\n.categoryContainer.selected {\\n background-color: #E6EDFB; }\\n\\n.categoryContainer.selected .icon {\\n color: #00162b; }\\n\\n.categoryContainer h3 {\\n font-family: Bull;\\n font-size: .9rem;\\n margin: 0; }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppService } from 'app/app.service';\r\nimport { Router } from '@angular/router';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { SwiperConfigInterface } from 'ngx-swiper-wrapper';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SpotData } from 'dto';\r\nimport { GetServiceUrl } from 'psapp-config';\r\nimport { PopupMessage, MessageService } from 'rb-core-library';\r\nimport * as _ from 'lodash';\r\n\r\ndeclare var window:any;\r\n\r\n@Component({\r\n selector: 'app-newpos',\r\n templateUrl: './newpos.component.html',\r\n styleUrls: ['./newpos.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class NewposComponent implements OnInit {\r\n\r\n newPOSData: PosData = null;\r\n statusCode = null;\r\n isLoading:boolean = false;\r\n\r\n posTypeList = [];\r\n isPOSCodeEnabled:boolean = false;\r\n selectedGroup = null;\r\n\r\n swiperConfig: SwiperConfigInterface = {\r\n direction: 'horizontal',\r\n pagination: true,\r\n spaceBetween: 10,\r\n slidesPerView: 'auto'\r\n };\r\n\r\n imageService = GetServiceUrl(\"GetPOSTypeImage\");\r\n\r\n constructor(\r\n private router: Router,\r\n private appService: AppService,\r\n public translationProvider: TranslationProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n private remoteServicesProvider: RemoteServicesProvider,\r\n private translateService: TranslateService,\r\n private loginProvider: LoginProvider,\r\n public messageService: MessageService\r\n ) {\r\n this.showHideMenu(false);\r\n this.messageService.popupMessage = null;\r\n let marker = this.domainStorageProvider.rootStore.selectedPOS.getValue();\r\n if (marker) {\r\n this.loadData(marker);\r\n }\r\n else {\r\n this.back();\r\n }\r\n }\r\n\r\n async loadData(marker:any){\r\n //refresh groups\r\n await this.domainStorageProvider.getConfigData(false);\r\n\r\n this.selectedGroup = this.domainStorageProvider.rootStore.getSelectedGroup();\r\n if(this.selectedGroup){\r\n this.posTypeList = this.domainStorageProvider.rootStore.posTypeList;\r\n this.isPOSCodeEnabled = /*this.domainStorageProvider.rootStore.config.enablePosCode ||*/ this.selectedGroup.enablePosCode;\r\n\r\n this.newPOSData = new PosData(marker.name, marker, this.isPOSCodeEnabled);\r\n }\r\n else{\r\n this.messageService.addMessage( {\r\n type: 'danger',\r\n text: this.translateService.instant(\"App.MustChooseCampaign\"),\r\n timeout: 3000\r\n });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n\r\n cancelCreatePos() {\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n\r\n presentLoading() {\r\n this.isLoading = true;\r\n }\r\n\r\n dismissLoading() {\r\n this.isLoading = false;\r\n }\r\n\r\n loadNotFoundImage(image) {\r\n image.src = \"assets/imgs/rb_product_placeholder.jpg\";\r\n }\r\n\r\n async confirmAction() {\r\n if (this.newPOSData && this.newPOSData.isValid()) {\r\n \r\n //track\r\n var posType = _.find(this.posTypeList, item => item.id == this.newPOSData.posTypeId);\r\n if(posType){\r\n var contentId = this.appService.url2contentId(\"/create\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'button', 2: 'footer', 3: posType[\"type\"] } }]);\r\n }\r\n \r\n this.presentLoading();\r\n await this.remoteServicesProvider\r\n .sendPos(this.newPOSData, this.loginProvider.token)\r\n .then((result:any) => {\r\n this.dismissLoading();\r\n\r\n if (result) {\r\n if (result.id === -1) {\r\n let popupMessage: PopupMessage = {\r\n type: 'danger',\r\n text: this.translateService.instant(\"SearchPosPage.ErrorRegisterPOSExisting\"),\r\n timeout: 3000\r\n };\r\n this.messageService.addMessage(popupMessage);\r\n }\r\n else {\r\n //set selected POS\r\n this.domainStorageProvider.rootStore.selectedPOS.next({\r\n id: result.id,\r\n name: result.name,\r\n address: result.address,\r\n location: result.location,\r\n });\r\n \r\n //set new spot data\r\n this.domainStorageProvider.rootStore.spotData.next(new SpotData(\r\n this.domainStorageProvider.rootStore.selectedPOS.value,\r\n this.selectedGroup\r\n ));\r\n \r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n }\r\n });\r\n this.dismissLoading();\r\n }\r\n }\r\n}\r\n\r\n\r\nclass PosData {\r\n requirePOSCode:boolean;\r\n id;\r\n name;\r\n posTypeId;\r\n posCode;\r\n address;\r\n marker;\r\n\r\n constructor(name, marker, requirePOSCode:boolean) {\r\n if (name) {\r\n this.name = name;\r\n }\r\n this.requirePOSCode = requirePOSCode;\r\n this.marker = marker;\r\n if(this.marker){\r\n if(this.marker.id){\r\n this.id = this.marker.id;\r\n }\r\n if(this.marker.address){\r\n this.address = this.marker.address;\r\n }\r\n if(this.marker.posCode){\r\n this.posCode = this.marker.posCode;\r\n }\r\n if(this.marker.posTypeId){\r\n this.posTypeId = this.marker.posTypeId;\r\n }\r\n }\r\n }\r\n\r\n isValid() {\r\n if (this.name && this.address && this.posTypeId && (!this.requirePOSCode || this.posCode)) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n\r\n","import { SharedModule } from \"./../../app/shared.module\";\r\nimport { LoginProvider } from \"../../providers/login/login\";\r\nimport { NgModule } from \"@angular/core\";\r\n\r\nimport { SwiperModule } from 'ngx-swiper-wrapper';\r\nimport { SWIPER_CONFIG } from 'ngx-swiper-wrapper';\r\nimport { SwiperConfigInterface } from 'ngx-swiper-wrapper';\r\nimport { NewposComponent } from \"./newpos.component\";\r\n\r\nconst DEFAULT_SWIPER_CONFIG: SwiperConfigInterface = {\r\n\tdirection: 'horizontal',\r\n\tslidesPerView: 'auto'\r\n};\r\n\r\n\r\n@NgModule({\r\n\tdeclarations: [NewposComponent],\r\n\timports: [\r\n\t\tSwiperModule,\r\n\t\tSharedModule\r\n\t],\r\n\texports: [NewposComponent],\r\n\tproviders: [\r\n\t\tLoginProvider,\r\n\t\t{\r\n\t\t\tprovide: SWIPER_CONFIG,\r\n\t\t\tuseValue: DEFAULT_SWIPER_CONFIG\r\n\t\t}\r\n\t]\r\n})\r\nexport class NewposModule { }\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{'App.ErrorLabel' | translate}}

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

\\r\\n \\r\\n {{ \\\"NewspotRegisterError.ErrorCreatedSpotLabel1\\\" | translate }}\\r\\n \\r\\n \\r\\n {{ \\\"NewspotRegisterError.ErrorCreatedSpotLabel2\\\" | translate }}\\r\\n \\r\\n \\r\\n {{ \\\"App.AccessDenied\\\" | translate }}\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".content {\\n padding: 1rem; }\\n\\n.footerbar {\\n display: block;\\n border-top: 1px solid #E8E7E7;\\n padding: 1.5rem 0; }\\n\\n.spot-error {\\n font-size: 2rem;\\n color: #00162b; }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-newspot-error',\r\n templateUrl: './newspot-error.component.html',\r\n styleUrls: ['./newspot-error.component.scss']\r\n})\r\nexport class NewspotErrorComponent implements OnInit {\r\n statusCode:string;\r\n \r\n constructor(private route: ActivatedRoute, private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.statusCode = this.route.snapshot.paramMap.get('statusCode');\r\n }\r\n\r\n gotoStartPage() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{ \\\"NewspotRegister.PhotosLabel\\\" | translate }}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ \\\"NewspotRegister.AddPhotoFromCamera\\\" | translate }}
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ \\\"NewspotRegister.AddPhotoFromGallery\\\" | translate }}
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\"","module.exports = \".content {\\n margin-bottom: 64px; }\\n\\n.list {\\n padding: 1rem; }\\n\\n.list .box {\\n border-radius: 2px;\\n background-color: #FFFFFF;\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n text-align: center;\\n position: relative;\\n margin-bottom: 1rem;\\n height: 190px;\\n background-size: contain;\\n background-position: center;\\n background-repeat: no-repeat; }\\n\\n.list .box .checkbox {\\n float: right; }\\n\\n.list .box .checkbox label {\\n padding-left: 17px; }\\n\\n.list .box .icon {\\n position: relative; }\\n\\n.list .box .icon .ico-photo {\\n min-width: 84px;\\n height: 48px;\\n background-size: contain;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2248%22 height%3D%2236%22 viewBox%3D%220 0 48 36%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M46.4 6.171H35.307a.59.59 0 0 1-.534-.308l-2.56-5.04C32 .309 31.36 0 30.827 0h-13.44c-.64 0-1.174.309-1.387.823l-2.773 5.04c-.107.206-.32.308-.427.308H1.6c-.853 0-1.6.72-1.6 1.543v26.743C0 35.28.747 36 1.6 36h44.8c.853 0 1.6-.72 1.6-1.543V7.714c0-.823-.747-1.543-1.6-1.543zM17.707 4.63l.64-1.338c.32-.411.746-.72 1.173-.72h8.96c.427 0 .853.309 1.067.72l.64 1.338c.426.617.106 1.542-.534 1.851-.106.103-.32.206-.426.206H18.88c-.747-.103-1.387-.823-1.28-1.543 0-.206.107-.412.107-.514zM24 27.257c-3.535 0-6.4-2.763-6.4-6.171 0-3.409 2.865-6.172 6.4-6.172s6.4 2.763 6.4 6.172c0 3.408-2.865 6.171-6.4 6.171zm0 4.114c-5.867 0-10.667-4.628-10.667-10.285S18.133 10.8 24 10.8s10.667 4.629 10.667 10.286S29.867 31.37 24 31.37z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cg fill%3D%22none%22 fill-rule%3D%22evenodd%22%3E%0D %3Cpath fill%3D%22%23FFF%22 d%3D%22M-164-233h375v731h-375z%22%2F%3E%0D %3Cuse fill%3D%22%2300162b%22 fill-rule%3D%22nonzero%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\");\\n background-repeat: no-repeat;\\n background-position: center;\\n margin-top: 3.8rem;\\n margin-bottom: 1rem; }\\n\\n.list .box .icon .ico-gallery {\\n min-width: 84px;\\n height: 48px;\\n background-size: contain;\\n background-image: url(\\\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22utf-8%22%3F%3E%0D%3Csvg version%3D%221.1%22%0D%09 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22 width%3D%22240px%22 height%3D%22240px%22%0D%09 viewBox%3D%220 0 240 240%22 xml%3Aspace%3D%22preserve%22%3E%0D %3Cg transform%3D%22translate(0%2C-812.36218)%22%3E%0D %3Cpath fill%3D%22%2300162b%22 d%3D%22M192%2C812.362H0v192h192V812.362z M176%2C956.362H16v-128h160V956.362z%0D M128%2C876.362l-11.429%2C22.857L80%2C844.362l-48%2C96h128L128%2C876.362z M208%2C858.051v162.312H30.236l-1.254%2C11.931l190.949%2C20.069%0D L240%2C861.414L208%2C858.051z%22%2F%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\");\\n background-repeat: no-repeat;\\n background-position: center;\\n margin-top: 3.8rem;\\n margin-bottom: 1rem; }\\n\\n.list .box .icon .label {\\n width: 100%;\\n display: block;\\n font-family: \\\"Bull\\\", sans-serif;\\n font-weight: bold;\\n font-size: 1.1rem;\\n text-transform: uppercase; }\\n\\n.list .box .icon input {\\n opacity: 0;\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n top: 0px;\\n bottom: 0px;\\n left: 0px;\\n right: 0px; }\\n\\n.list .box .closeButton {\\n height: 22px;\\n width: 22px;\\n border: 1px solid #D2CFD0;\\n background-color: #E8E7E7;\\n border-radius: 2px;\\n text-align: center;\\n position: absolute;\\n top: 10px;\\n right: 10px; }\\n\"","import { Component, OnInit, OnDestroy, ViewChild } from '@angular/core';\r\nimport { AppService } from '../app.service';\r\nimport { Router } from '@angular/router';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { SpotData } from 'dto/spotdata';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { LocalstorageProvider } from 'providers/localstorage/localstorage';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ImageResizeProvider } from 'providers/image-processor/image-resize';\r\nimport { PopupMessage, MessageService } from 'rb-core-library';\r\nimport { ImageProcessorProvider } from 'providers/image-processor/image-processor';\r\n\r\n@Component({\r\n selector: 'app-newspot-images',\r\n templateUrl: './newspot-images.component.html',\r\n styleUrls: ['./newspot-images.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class NewspotImagesComponent implements OnInit, OnDestroy {\r\n\r\n spotData: SpotData = null;\r\n isLoading: boolean = false;\r\n\r\n @ViewChild(\"captureImageInput\") captureImageInput;\r\n @ViewChild(\"uploadImageInput\") uploadImageInput;\r\n\r\n constructor(\r\n private appService: AppService,\r\n private router: Router,\r\n public remoteService: RemoteServicesProvider,\r\n public translateService: TranslateService,\r\n private domainStorageProvider: DomainStorageProvider,\r\n private imageResizeProvider: ImageResizeProvider,\r\n private imageProcessorProvider: ImageProcessorProvider,\r\n public messageService: MessageService\r\n ) {\r\n this.messageService.popupMessage = null;\r\n this.showHideMenu(false);\r\n this.setupImageProcessor();\r\n }\r\n\r\n ngOnInit() {\r\n this.spotData = this.domainStorageProvider.rootStore.spotData.value;\r\n if (!this.spotData) {\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n\r\n canSendPhotos() {\r\n return this.spotData.photos.length < 8;\r\n }\r\n\r\n clearInputs() {\r\n this.captureImageInput.nativeElement.value = \"\";\r\n this.uploadImageInput.nativeElement.value = \"\";\r\n }\r\n\r\n setupImageProcessor(){\r\n this.imageProcessorProvider.resultEvent.subscribe((e) => {\r\n \r\n if (e.status == 1) {\r\n this.spotData.createOrUpdatePhoto(e.data);\r\n }\r\n else {\r\n let popupMessage: PopupMessage = {\r\n type: 'danger',\r\n text: this.translateService.instant(\"NewspotRegisterPhotos.ErrorUploading\"),\r\n timeout: 3000\r\n };\r\n this.messageService.addMessage(popupMessage);\r\n\r\n this.spotData.removeInvalidPhoto();\r\n }\r\n\r\n this.isLoading = false;\r\n });\r\n }\r\n \r\n async fileChangeEvent(fileInput: any) {\r\n if (fileInput.target.files && fileInput.target.files[0]) {\r\n this.isLoading = true;\r\n\r\n this.spotData.createOrUpdatePhoto(null);\r\n this.imageProcessorProvider.processImage(fileInput.target.files[0], 800, 800);\r\n\r\n /*\r\n await this.imageResizeProvider.resizeImage(fileInput.target.files[0], 800, 800).then(image => {\r\n this.spotData.createOrUpdatePhoto(image);\r\n }, err => {\r\n\r\n let popupMessage: PopupMessage = {\r\n type: 'danger',\r\n text: this.translateService.instant(\"NewspotRegisterPhotos.ErrorUploading\"),\r\n timeout: 3000\r\n };\r\n this.messageService.addMessage(popupMessage);\r\n\r\n this.spotData.removeInvalidPhoto();\r\n });*/\r\n }\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{ \\\"NewspotRegister.ProductsLabel\\\" | translate }}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
{{ item.productName + ' ' + item.volume }}
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\"","module.exports = \".content {\\n margin-bottom: 64px; }\\n\\n.list {\\n padding: 1rem; }\\n\\n.list .box {\\n border-radius: 2px;\\n background-color: #FFFFFF;\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n padding: .75rem;\\n text-align: center;\\n position: relative;\\n margin-bottom: 1rem; }\\n\\n.list .box .checkbox {\\n float: right; }\\n\\n.list .box .checkbox label {\\n padding-left: 17px; }\\n\\n.list .box .image {\\n margin-bottom: 1rem;\\n display: inline-block;\\n width: 138px;\\n height: 138px;\\n background-repeat: no-repeat;\\n background-size: contain;\\n background-position: center; }\\n\\n.list .button {\\n width: 20%;\\n font-size: 17px;\\n line-height: 18px;\\n margin: 0 auto;\\n background: #1b6aee;\\n border-radius: 30px; }\\n\\n.list .button i {\\n font-size: 18px; }\\n\"","import { Component, OnInit, OnDestroy, AfterViewInit, Directive, Input, AfterViewChecked } from '@angular/core';\r\nimport { AppService } from '../app.service';\r\nimport { Router } from '@angular/router';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { GetServiceUrl } from 'psapp-config';\r\nimport { SpotData } from 'dto';\r\n\r\n@Directive({ selector: '[priceInput]' })\r\nexport class PriceInput implements AfterViewInit {\r\n\r\n @Input(\"inputId\") id;\r\n\r\n ngAfterViewInit() {\r\n let input = document.querySelector(\"#\" + this.id);\r\n if (input) {\r\n input.focus();\r\n }\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-newspot-products',\r\n templateUrl: './newspot-products.component.html',\r\n styleUrls: ['./newspot-products.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class NewspotProductsComponent implements OnInit, OnDestroy {\r\n\r\n imageService = GetServiceUrl(\"ImageProduct\");\r\n inputData = null;\r\n domainData = null;\r\n spotData: SpotData = null;\r\n\r\n constructor(\r\n private appService: AppService,\r\n private router: Router,\r\n public remoteService: RemoteServicesProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n ) {\r\n this.showHideMenu(false);\r\n }\r\n\r\n ngOnInit() {\r\n this.spotData = this.domainStorageProvider.rootStore.spotData.value;\r\n if (!this.spotData) {\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n\r\n this.domainData = this.domainStorageProvider.rootStore.products;\r\n this.inputData = {};\r\n this.domainData.forEach(product => {\r\n\r\n let hasSavedProduct = this.spotData && this.spotData.products && this.spotData.products[product.id] != null;\r\n\r\n this.inputData[product.id] = {\r\n checked: hasSavedProduct ? this.spotData.products[product.id].checked : false,\r\n showPrice: hasSavedProduct ? this.spotData.products[product.id].value : false,\r\n value: hasSavedProduct ? this.spotData.products[product.id].value : null\r\n };\r\n });\r\n }\r\n\r\n submitProducts() {\r\n let spotData = this.domainStorageProvider.rootStore.spotData.value;\r\n spotData.setProducts(this.inputData);\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n\r\n loadNotFoundImage(image) {\r\n image.src = \"assets/imgs/rb_product_placeholder.jpg\";\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{'NewspotRegisterSuccess.Title' | translate}}

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

{{'NewspotRegisterSuccess.SuccessfullyCreatedSpotTitle' | translate}}

\\r\\n

{{'NewspotRegisterSuccess.SuccessfullyCreatedSpotText' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".content {\\n padding: 1rem; }\\n .content .successContainer {\\n align-self: center;\\n justify-self: center;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n min-height: calc(100vh - 160px);\\n color: #8E8E93; }\\n .content .successContainer .textContainer {\\n margin: 30px 0; }\\n .content .successContainer .spot-success {\\n min-height: 100px;\\n max-height: calc(60vh - 160px); }\\n .footerbar {\\n display: block;\\n border-top: 1px solid #E8E7E7;\\n padding: 1.5rem 0;\\n background: #f7f6f6; }\\n .footerbar .button {\\n min-width: 4%;\\n background: #1b6aee;\\n border-color: #1b6aee;\\n border-radius: 30px; }\\n .footerbar .button:hover {\\n background: #3279f0;\\n border-color: #3279f0; }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-newspot-success',\r\n templateUrl: './newspot-success.component.html',\r\n styleUrls: ['./newspot-success.component.scss']\r\n})\r\nexport class NewspotSuccessComponent implements OnInit {\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n gotoStartPage() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{ \\\"NewspotRegister.NotesLabel\\\" | translate }}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n 0\\\" *ngFor=\\\"let question of domainData; let i = index\\\"\\r\\n [title]=\\\"question['question'+translationProvider.getLanguageName()]\\\" >\\r\\n\\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{ \\\"NewspotRegisterQuestions.ChooseMultiOptions\\\" | translate }}

\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\"","module.exports = \".content {\\n margin-bottom: 64px;\\n padding: 1rem; }\\n\\n.list {\\n padding: 1rem; }\\n\\n.list .box {\\n border-radius: 2px;\\n background-color: #FFFFFF;\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n padding: .75rem;\\n text-align: center;\\n position: relative;\\n margin-bottom: 1rem; }\\n\\n.list .box .checkbox {\\n float: right; }\\n\\n.list .box .checkbox label {\\n padding-left: 17px; }\\n\\n.list .box img {\\n margin-bottom: 1rem;\\n display: inline-block; }\\n\\n.container-answer ul {\\n list-style: none;\\n margin: 0;\\n padding: 0; }\\n\\n.container-answer ul li {\\n min-height: 15px; }\\n\\n.selectSingle {\\n width: 100%;\\n height: 32px;\\n vertical-align: middle;\\n font-family: \\\"BullText\\\", sans-serif;\\n font-size: 1rem;\\n border: 1px solid #d2cfd0;\\n border-radius: 2px; }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppService } from 'app/app.service';\r\nimport { Router } from '@angular/router';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport * as _ from 'lodash';\r\nimport { SpotData } from 'dto';\r\n\r\n@Component({\r\n selector: 'app-newspot-survey',\r\n templateUrl: './newspot-survey.component.html',\r\n styleUrls: ['./newspot-survey.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class NewspotSurveyComponent implements OnInit {\r\n\r\n inputData = null;\r\n domainData = null;\r\n spotData: SpotData = null;\r\n\r\n constructor(\r\n private appService: AppService,\r\n private router: Router,\r\n public remoteService: RemoteServicesProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n public translationProvider: TranslationProvider,\r\n ) {\r\n this.showHideMenu(false);\r\n\r\n this.spotData = this.domainStorageProvider.rootStore.spotData.value;\r\n if (!this.spotData) {\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n\r\n this.inputData = this.spotData && this.spotData.notes ? this.spotData.notes : {};\r\n this.domainData = this.domainStorageProvider.rootStore.survey;\r\n this.domainData.forEach(question => {\r\n if ((question.typeId === 0 || question.typeId === 2) && !this.inputData[question.id]) {\r\n this.inputData[question.id] = {};\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n\r\n submitSurvey() {\r\n let spotData = this.domainStorageProvider.rootStore.spotData.value;\r\n spotData.setNotes(this.sanitizeData());\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n\r\n sanitizeData() {\r\n let dataResult = {};\r\n _.each(this.inputData, (element, key) => {\r\n if (Array.isArray(element)) {\r\n if (element.length > 0) {\r\n dataResult[key] = element;\r\n }\r\n } else if (typeof element === \"string\") {\r\n if (element.replace(/\\s/g, \"\").length > 0) {\r\n dataResult[key] = element;\r\n }\r\n } else if (typeof element === \"object\") {\r\n if (Object.keys(element).length > 0) {\r\n let shouldAdd = false;\r\n let objResult = {};\r\n for (var keyLoop in element) {\r\n // check also if property is not inherited from prototype\r\n if (element.hasOwnProperty(keyLoop) && element[keyLoop] == true) {\r\n objResult[keyLoop] = true;\r\n shouldAdd = true;\r\n }\r\n if (shouldAdd) {\r\n dataResult[key] = objResult;\r\n }\r\n }\r\n }\r\n } else {\r\n dataResult[key] = element;\r\n }\r\n });\r\n return dataResult;\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{ \\\"NewspotRegister.Title\\\" | translate }}

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

{{ \\\"NewspotRegister.Header\\\" | translate }}

\\r\\n

{{ \\\"NewspotRegister.ExitConfirmationText\\\" | translate }}

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{spotData.posMeta.name}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{spotData.groupMeta.shortName}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
0\\\">{{ \\\"NewspotRegister.DoneCheck\\\" | translate }}\\r\\n
\\r\\n \\r\\n
{{ \\\"NewspotRegister.PhotosLabel\\\" | translate }} *
\\r\\n
\\r\\n\\r\\n
\\r\\n
0\\\">{{ \\\"NewspotRegister.DoneCheck\\\" | translate }}\\r\\n
\\r\\n \\r\\n
{{ \\\"NewspotRegister.NotesLabel\\\" | translate }} *
\\r\\n
\\r\\n\\r\\n
\\r\\n
0\\\">{{ \\\"NewspotRegister.DoneCheck\\\" |\\r\\n translate }}
\\r\\n \\r\\n
{{ \\\"NewspotRegister.ProductsLabel\\\" | translate }} *
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n * {{ \\\"App.RequiredField\\\" | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \".content {\\n margin-bottom: 64px;\\n display: inline-block;\\n width: 100%; }\\n\\n.topContainer {\\n color: #A4A0A0; }\\n\\n.topContainer .icon {\\n color: #00162b;\\n margin-right: 1rem; }\\n\\n.required-label {\\n color: #363334;\\n font-size: .9rem;\\n display: inline-block;\\n margin-bottom: 1rem; }\\n\\n.box {\\n border-radius: 2px;\\n background-color: #FFFFFF;\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n padding: 1rem;\\n margin: 1rem 2rem;\\n text-align: center;\\n position: relative;\\n color: #363334;\\n font-family: Bull;\\n font-size: 1.1rem;\\n font-weight: bold;\\n text-transform: uppercase; }\\n\\n.box .label {\\n margin-top: 1rem;\\n margin-bottom: 1rem;\\n text-transform: uppercase;\\n font-size: 1.1rem; }\\n\\n.box .label .required {\\n color: #00162b;\\n font-size: 1.1rem; }\\n\\n.box .icon {\\n color: #00162b;\\n height: 60px;\\n width: 60px;\\n font-size: 3rem;\\n margin-top: 1rem; }\\n\\n.box .done {\\n position: absolute;\\n top: 10px;\\n right: 10px;\\n color: #369E36; }\\n\\n.box .ico-photo {\\n width: 48px;\\n height: 36px;\\n background-size: contain;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2248%22 height%3D%2236%22 viewBox%3D%220 0 48 36%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M46.4 6.171H35.307a.59.59 0 0 1-.534-.308l-2.56-5.04C32 .309 31.36 0 30.827 0h-13.44c-.64 0-1.174.309-1.387.823l-2.773 5.04c-.107.206-.32.308-.427.308H1.6c-.853 0-1.6.72-1.6 1.543v26.743C0 35.28.747 36 1.6 36h44.8c.853 0 1.6-.72 1.6-1.543V7.714c0-.823-.747-1.543-1.6-1.543zM17.707 4.63l.64-1.338c.32-.411.746-.72 1.173-.72h8.96c.427 0 .853.309 1.067.72l.64 1.338c.426.617.106 1.542-.534 1.851-.106.103-.32.206-.426.206H18.88c-.747-.103-1.387-.823-1.28-1.543 0-.206.107-.412.107-.514zM24 27.257c-3.535 0-6.4-2.763-6.4-6.171 0-3.409 2.865-6.172 6.4-6.172s6.4 2.763 6.4 6.172c0 3.408-2.865 6.171-6.4 6.171zm0 4.114c-5.867 0-10.667-4.628-10.667-10.285S18.133 10.8 24 10.8s10.667 4.629 10.667 10.286S29.867 31.37 24 31.37z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cg fill%3D%22none%22 fill-rule%3D%22evenodd%22%3E%0D %3Cpath fill%3D%22%23FFF%22 d%3D%22M-164-233h375v731h-375z%22%2F%3E%0D %3Cuse fill%3D%22%2300162b%22 fill-rule%3D%22nonzero%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\"); }\\n\\n.box .ico-survey {\\n width: 36px;\\n height: 48px;\\n background-size: contain;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2236%22 height%3D%2248%22 viewBox%3D%220 0 36 48%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M24 4.8H12V0h12v4.8zM34.5 48h-33A1.5 1.5 0 0 1 0 46.5V3.9a1.5 1.5 0 0 1 1.5-1.5h5.7v7.2h21.6V2.4h5.7A1.5 1.5 0 0 1 36 3.9v42.6a1.5 1.5 0 0 1-1.5 1.5zM21.6 36H7.2v4.2h14.4V36zm7.2-9.6H7.2v4.2h21.6v-4.2zm0-9.6H7.2V21h21.6v-4.2z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cg fill%3D%22none%22 fill-rule%3D%22evenodd%22%3E%0D %3Cpath fill%3D%22%23FFF%22 d%3D%22M-170-365h375v731h-375z%22%2F%3E%0D %3Cuse fill%3D%22%2300162b%22 fill-rule%3D%22nonzero%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\"); }\\n\\n.box .ico-bull {\\n width: 94px;\\n height: 52px;\\n background-size: contain;\\n background-image: url('ico-bull@2x.png');\\n background-repeat: no-repeat; }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppService } from '../app.service';\r\nimport { Router } from '@angular/router';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { SpotData } from 'dto/spotdata';\r\nimport { v4 as uuid } from \"uuid\";\r\nimport { LocalstorageProvider } from 'providers/localstorage/localstorage';\r\n\r\ndeclare var window:any;\r\n\r\n@Component({\r\n selector: 'app-newspot',\r\n templateUrl: './newspot.component.html',\r\n styleUrls: ['./newspot.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class NewSpotComponent implements OnInit {\r\n\r\n showConfirmation: boolean = false;\r\n showSurveyBlock = this.domainStorageProvider.rootStore.survey.length > 0;\r\n showProductsBlock = this.domainStorageProvider.rootStore.products.length > 0;\r\n spotData: SpotData = null;\r\n isLoading: boolean = false;\r\n selectedGroup = null;\r\n\r\n constructor(\r\n private router: Router,\r\n private appService: AppService,\r\n public translationProvider: TranslationProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n private remoteServicesProvider: RemoteServicesProvider,\r\n private localStorageProvider: LocalstorageProvider,\r\n private loginProvider: LoginProvider\r\n ) {\r\n this.showHideMenu(false);\r\n this.selectedGroup = this.domainStorageProvider.rootStore.getSelectedGroup();\r\n\r\n let spotData = this.domainStorageProvider.rootStore.spotData.value;\r\n if (spotData) {\r\n this.spotData = spotData;\r\n }\r\n else {\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n confirm() {\r\n this.showConfirmation = true;\r\n }\r\n\r\n hide() {\r\n this.showConfirmation = false;\r\n }\r\n\r\n close() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n\r\n back() {\r\n this.confirm();\r\n }\r\n\r\n onStartCheck() {\r\n this.submitSpot();\r\n }\r\n\r\n openNewSpotImages() {\r\n this.router.navigate(['/newspot/images']);\r\n }\r\n\r\n openNewSpotSurvey() {\r\n this.router.navigate(['/newspot/survey']);\r\n }\r\n\r\n openNewSpotProducts() {\r\n this.router.navigate(['/newspot/products']);\r\n }\r\n\r\n async submitSpot() {\r\n\r\n var contentId = this.appService.url2contentId(\"/submit_report\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'button', 2: 'footer' } }]);\r\n\r\n this.isLoading = true;\r\n\r\n let spotList = this.spotData.generateOutput();\r\n let statusCode: string = null;\r\n let sendSpotProcess = await this.remoteServicesProvider\r\n .sendSpot(spotList, this.loginProvider.token)\r\n .catch(err => {\r\n statusCode = err.status;\r\n });\r\n this.isLoading = false;\r\n\r\n if (sendSpotProcess) {\r\n this.router.navigate(['/newspot/success']);\r\n }\r\n else {\r\n //save the spot data to be able to sync it later\r\n this.localStorageProvider.write(\"spot-\" + uuid(), spotList);\r\n this.router.navigate(['/newspot/error/', statusCode]);\r\n }\r\n }\r\n}\r\n","import { SharedModule } from \"app/shared.module\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { PriceInput, NewspotProductsComponent } from \"app/newspot-products/newspot-products.component\";\r\nimport { NewSpotComponent } from \"./newspot.component\";\r\nimport { NewspotImagesComponent } from \"app/newspot-images/newspot-images.component\";\r\nimport { NewspotSurveyComponent } from \"app/newspot-survey/newspot-survey.component\";\r\nimport { NewspotSuccessComponent } from \"app/newspot-success/newspot-success.component\";\r\nimport { NgxCurrencyModule } from \"ngx-currency\";\r\nimport { SyncBarModule } from \"app/sync-bar/sync-bar.module\";\r\nimport { NewspotErrorComponent } from \"app/newspot-error/newspot-error.component\";\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NewSpotComponent,\r\n NewspotImagesComponent,\r\n NewspotSurveyComponent,\r\n NewspotProductsComponent,\r\n NewspotSuccessComponent,\r\n NewspotErrorComponent,\r\n PriceInput,\r\n ],\r\n imports: [\r\n SharedModule,\r\n NgxCurrencyModule,\r\n SyncBarModule\r\n ]\r\n})\r\n\r\nexport class NewspotModule {\r\n}\r\n","module.exports = \"\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{rankingPositions.generalPosition > 0 ?\\r\\n rankingPositions.generalPosition : '-'}}\\r\\n {{rankingPositions.generalSpots > 0 ?\\r\\n rankingPositions.generalSpots : '-'}}\\r\\n {{rankingPositions.groupPosition > 0 ?\\r\\n rankingPositions.groupPosition : '-'}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n

{{'DashboardPage.TipsTabLabel' | translate}}

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

{{\\\"TipsPage.GoodToKnow\\\" | translate}}

\\r\\n {{ item[\\\"text\\\"+translationProvider.getLanguageName()] }}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n

{{'DashboardPage.NewCheck' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{pos.name ? pos.name :\\r\\n ('DashboardPage.POSPlaceholder' | translate) }}
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{campaign.shortName ?\\r\\n campaign.shortName :\\r\\n ('DashboardPage.CampaignsPlaceholder' | translate) }}
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","module.exports = \".tipContainer {\\n background-color: #fff;\\n padding: 1rem;\\n margin: 1rem 3rem 2rem 3rem;\\n border-radius: 2px;\\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);\\n min-height: 100px;\\n text-transform: uppercase; }\\n\\n.topBanner {\\n border-radius: 2px;\\n position: relative;\\n margin-bottom: 15px;\\n height: auto;\\n width: 100%;\\n padding-bottom: 20px; }\\n\\n.topBanner img {\\n width: 100%; }\\n\\n.inputContainer {\\n margin: 0.25rem 0 .5rem 0; }\\n\\n.inputContainer .locationIcon {\\n color: #00162b; }\\n\\n.inputContainer .form__input {\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n background: #fff;\\n color: #000;\\n width: 100%;\\n font-weight: 200;\\n text-decoration: none;\\n font-family: 'bulltext';\\n border: 1px solid #d2cfd0;\\n font-size: 16px;\\n height: 44px;\\n border-radius: 6px;\\n padding: 9px 9px; }\\n\\n.button--light [class^=\\\"icon-\\\"], .button--light [class*=\\\" icon-\\\"] {\\n color: #1544a9; }\\n\\n.contentblock {\\n background-color: #000 !important; }\\n\\n.submitContainer {\\n text-align: center;\\n margin-bottom: 1rem; }\\n\\n.submitContainer button {\\n min-width: 140px;\\n border-radius: 300px;\\n background: #1b6aee;\\n border-color: #1b6aee;\\n margin: .25rem 0;\\n padding: 9px 14px; }\\n\\n.submitContainer button:hover {\\n background: #3279f0; }\\n\\n.contentblock__inner {\\n position: relative;\\n margin: 15px;\\n padding-bottom: 20px; }\\n\\n.ranking a.button {\\n padding: 0;\\n line-height: 38px;\\n float: right;\\n color: #00162b; }\\n\\n.ranking a.button .middle {\\n width: 100%;\\n text-align: left;\\n padding-right: 10px; }\\n\\n.ranking a.button i {\\n margin: 0; }\\n\\n.ranking .icons {\\n white-space: nowrap;\\n overflow-x: auto;\\n display: flex; }\\n\\n.ranking .icons i {\\n color: #00162b; }\\n\\n.ranking .icons span {\\n padding-top: 20px;\\n display: inline-block;\\n font-size: .9rem;\\n font-weight: 600;\\n font-display: \\\"BullText\\\", sans-serif;\\n margin-right: 3px;\\n color: #00162b; }\\n\\n.swiper-button-prev:before {\\n content: \\\"\\\" !important; }\\n\\n.swiper-button-next:before {\\n content: \\\"\\\" !important; }\\n\\n.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {\\n bottom: 0px; }\\n\\n.swiper-pagination.swiper-pagination-bullets {\\n position: relative;\\n bottom: -15px;\\n left: 50%;\\n -webkit-transform: translateX(-50%);\\n transform: translateX(-50%);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n width: auto;\\n background: transparent;\\n padding: 10px 8px;\\n border-radius: 7px; }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AppService } from 'app/app.service';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { SpotData } from 'dto';\r\nimport { SwiperConfigInterface } from 'ngx-swiper-wrapper';\r\nimport { GetServiceUrl } from 'psapp-config';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { GeolocalizationProvider } from 'providers/geolocalization/geolocalization';\r\n\r\ndeclare var window: any;\r\n\r\n@Component({\r\n selector: 'app-overview',\r\n templateUrl: './overview.component.html',\r\n styleUrls: ['./overview.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class OverviewComponent implements OnInit {\r\n\r\n posList = this.domainStorageProvider.rootStore.posList;\r\n rankingPositions = null;\r\n imageService = GetServiceUrl(\"ImageCampaignBanner\");\r\n\r\n swiperConfig: SwiperConfigInterface = {\r\n direction: 'horizontal',\r\n slidesPerView: 'auto',\r\n pagination: true,\r\n allowSlideNext: true,\r\n allowSlidePrev: true,\r\n loop: true\r\n };\r\n\r\n campaign: any = {\r\n shortName: null\r\n };\r\n\r\n bannerCampaign: any = null;\r\n\r\n pos: any = {\r\n name: null\r\n };\r\n\r\n tips: any[];\r\n\r\n constructor(\r\n private router: Router,\r\n public loginProvider: LoginProvider,\r\n public remoteService: RemoteServicesProvider,\r\n private appService: AppService,\r\n private domainStorageProvider: DomainStorageProvider,\r\n public translationProvider: TranslationProvider,\r\n ) {\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n //reload groups\r\n await this.domainStorageProvider.getConfigData(false);\r\n\r\n this.domainStorageProvider.rootStore.selectedPOS.subscribe(pos => {\r\n if (pos) {\r\n this.pos = pos;\r\n }\r\n else{\r\n this.pos = { name: null };\r\n }\r\n });\r\n\r\n //ranking\r\n this.domainStorageProvider.rootStore.selectedGroupId.subscribe(async groupId => {\r\n\r\n if (groupId) {\r\n //refresh group tips, products and survey\r\n //await this.domainStorageProvider.rootStore.loadGroupData(groupId);\r\n\r\n this.rankingPositions = await this.domainStorageProvider.rootStore.getRankingPositions(groupId);\r\n }\r\n\r\n //selected campaign\r\n let selectedCampaign = this.domainStorageProvider.rootStore.getSelectedGroup();\r\n if (selectedCampaign) {\r\n this.campaign = selectedCampaign;\r\n }\r\n\r\n //banner campaign\r\n let bannerCampaign = this.domainStorageProvider.rootStore.getDefaultGroupBanner();\r\n if (bannerCampaign) {\r\n this.bannerCampaign = bannerCampaign;\r\n }\r\n\r\n //swiper tips\r\n this.tips = this.domainStorageProvider.rootStore.tips;\r\n\r\n }).unsubscribe();\r\n }\r\n\r\n showRanking(event: Event) {\r\n event.preventDefault();\r\n var contentId = this.appService.url2contentId(\"/show_ranking\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'link', 2: 'subheader' } }]);\r\n this.router.navigate([\"/ranking\"]);\r\n }\r\n\r\n selectCampaign() {\r\n var contentId = this.appService.url2contentId(\"/campaigns\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'input', 2: 'content' } }]);\r\n this.router.navigate([\"/campaigns\"]);\r\n }\r\n\r\n searchPOS() {\r\n var contentId = this.appService.url2contentId(\"/search_position\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'input', 2: 'content' } }]);\r\n this.router.navigate([\"/searchpos\"]);\r\n }\r\n\r\n startCheck() {\r\n this.domainStorageProvider.rootStore.spotData.next(new SpotData(\r\n this.domainStorageProvider.rootStore.selectedPOS.value,\r\n this.domainStorageProvider.rootStore.getSelectedGroup()\r\n ));\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n\r\n gotoTips(textEngligh:String) {\r\n var contentId = this.appService.url2contentId(\"/\" + textEngligh);\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'teaser', 2: 'content' } }]);\r\n this.router.navigate([\"/tips\"]);\r\n }\r\n}\r\n","import { SharedModule } from \"./../../app/shared.module\";\r\nimport { LoginProvider } from \"../../providers/login/login\";\r\nimport { NgModule } from \"@angular/core\";\r\n\r\nimport { SwiperModule } from 'ngx-swiper-wrapper';\r\nimport { OverviewComponent } from \"./overview.component\";\r\n\r\n@NgModule({\r\n\tdeclarations: [OverviewComponent],\r\n\timports: [\r\n SwiperModule,\r\n\t\tSharedModule\r\n\t],\r\n\texports: [OverviewComponent],\r\n\tproviders: [\r\n\t\tLoginProvider\r\n\t]\r\n})\r\nexport class OverviewModule { }\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{'ProfilePage.Title' | translate}}

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

{{user.userFullName}}


\\r\\n

ID: {{user.userName}}

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

{{'ProfilePage.Campaigns' | translate}}

\\r\\n
\\r\\n {{item.shortName}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n

{{'ProfilePage.RankingList' | translate}}

\\r\\n

{{ 'ProfilePage.RankingLabel' | translate:{ position: rankingPositions.generalPosition, total:\\r\\n rankingPositions.generalTotal } }}

\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n {{'ProfilePage.ShowRanking' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\"","module.exports = \".avatar {\\n height: 6rem;\\n width: 6rem;\\n border-radius: 100%; }\\n\\n.compaigns span {\\n margin: 4px;\\n padding: 5px 10px;\\n border-radius: 2px; }\\n\\n.compaigns span.active {\\n background-color: #5685eb;\\n border-color: #5685eb;\\n color: #fff; }\\n\\n.button.expanded {\\n width: 100%;\\n text-align: left;\\n padding: 0;\\n display: block;\\n color: #00162b; }\\n\\n.button.expanded i {\\n color: #00162b;\\n margin-right: 10px; }\\n\\na.button.button--secondary {\\n border-radius: 300px;\\n background: #1b6aee;\\n border-color: #1b6aee;\\n margin: 0.25rem 0;\\n padding: 9px 14px;\\n color: #fff; }\\n\\na.button.button--secondary:hover {\\n background: #3279f0; }\\n\\n.button.expanded span.middle {\\n width: 100%;\\n position: relative;\\n left: -9px; }\\n\\n.bottomRow {\\n padding: 0 1rem; }\\n\\n.topInfo .verticalAlign {\\n display: flex;\\n align-items: center;\\n justify-content: end; }\\n\\n.topInfo .userInfo {\\n display: inline-block;\\n width: 100%; }\\n\\n.topInfo .userInfo .userFullName {\\n margin: 0;\\n display: inline-block;\\n width: 100%; }\\n\\n.topInfo .userInfo .userName {\\n font-size: 10px;\\n color: #938E8F;\\n display: inline-block;\\n width: 100%;\\n margin: 0; }\\n\"","import { Component, OnInit, OnDestroy, ViewChild, ElementRef } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AppService } from 'app/app.service';\r\nimport { RemoteServicesProvider } from 'providers/remote-services/remote-services';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ImageResizeProvider } from 'providers/image-processor/image-resize';\r\nimport { MessageService, PopupMessage } from 'rb-core-library';\r\nimport { GetServiceUrl } from 'psapp-config';\r\n\r\n@Component({\r\n selector: 'app-profile',\r\n templateUrl: './profile.component.html',\r\n styleUrls: ['./profile.component.scss']\r\n})\r\nexport class ProfileComponent implements OnInit, OnDestroy {\r\n\r\n user: any;\r\n rankingPositions: any;\r\n compaigns: any;\r\n isLoading: boolean = true;\r\n\r\n selectedCampaignId: any = null;\r\n\r\n profileData = {\r\n photo: null\r\n }\r\n profileImageSrc:string;\r\n\r\n @ViewChild(\"captureImageInput\") captureImageInput;\r\n @ViewChild(\"uploadImageInput\") uploadImageInput;\r\n\r\n constructor(\r\n private router: Router,\r\n private loginProvider: LoginProvider,\r\n private appService: AppService,\r\n private remoteServicesProvider: RemoteServicesProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n public translationProvider: TranslationProvider,\r\n public translateService: TranslateService,\r\n private imageResizeProvider: ImageResizeProvider,\r\n public messageService: MessageService\r\n ) {\r\n this.showHideMenu(false);\r\n this.messageService.popupMessage = null;\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.domainStorageProvider.rootStore.loginProvider;\r\n\r\n this.domainStorageProvider.rootStore.selectedGroupId.subscribe(async campaignId => {\r\n if (campaignId) {\r\n this.selectedCampaignId = campaignId;\r\n this.rankingPositions = await this.domainStorageProvider.rootStore.getRankingPositions(campaignId);\r\n }\r\n });\r\n this.compaigns = this.domainStorageProvider.rootStore.userGroups;\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n\r\n logout() {\r\n this.loginProvider.logout();\r\n this.router.navigate([\"/login\"]);\r\n }\r\n\r\n campaignClick(campaignName:string, campaignId){\r\n this.router.navigate([\"/ranking\", campaignName.trim(), campaignId]);\r\n }\r\n\r\n async fileChangeEvent(fileInput: any) {\r\n if (fileInput.target.files && fileInput.target.files[0]) {\r\n this.profileData.photo = null;\r\n await this.imageResizeProvider.resizeImage(fileInput.target.files[0], 800, 800).then(image => {\r\n this.profileData.photo = image;\r\n this.submitProfile();\r\n }, err => {\r\n let popupMessage: PopupMessage = {\r\n type: 'danger',\r\n text: this.translateService.instant(\"ProfilePage.ErrorUploading\"),\r\n timeout: 3000\r\n };\r\n this.messageService.addMessage(popupMessage);\r\n });\r\n }\r\n }\r\n\r\n async submitProfile() {\r\n this.isLoading = true;\r\n\r\n let statusCode: string = null;\r\n let sendSpotProcess = await this.remoteServicesProvider\r\n .updateProfile(this.profileData, this.loginProvider.token)\r\n .catch(err => {\r\n statusCode = err.status;\r\n });\r\n this.isLoading = false;\r\n\r\n let popupMessage: PopupMessage;\r\n if (sendSpotProcess) {\r\n popupMessage = {\r\n type: 'success',\r\n text: this.translateService.instant(\"ProfilePage.SuccessUploading\"),\r\n timeout: 3000\r\n };\r\n }\r\n else {\r\n popupMessage = {\r\n type: 'danger',\r\n text: this.translateService.instant(\"ProfilePage.ErrorUploading\"),\r\n timeout: 3000\r\n };\r\n }\r\n\r\n this.messageService.addMessage(popupMessage);\r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

{{ 'RankingPage.Title' | translate }}

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

{{'RankingPage.RankingNoResults' | translate}}

\\r\\n
\\r\\n
0\\\">\\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n {{i+1}}\\r\\n
    \\r\\n
    \\r\\n {{rank.logOn === userLogOn ? 'You' : rank.fullName}}\\r\\n
    \\r\\n
    \\r\\n {{rank.score}} {{(rank.score > 1 ? 'RankingPage.Reports' : 'RankingPage.Report') | translate}}\\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".swiper-slide .tabs__skipper-current,\\n.swiper-slide .tabs__skipper-separator,\\n.swiper-slide .tabs__skipper-total {\\n display: none !important; }\\n\\n.trophyTop {\\n padding-top: 1rem; }\\n\\n.trophyTop .ico-trophy-star {\\n -o-object-fit: cover;\\n object-fit: cover;\\n background-size: cover;\\n height: 40px;\\n width: 40px;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2218%22 height%3D%2218%22 viewBox%3D%220 0 18 18%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M152.972 125.028l-.372-1.68a1.15 1.15 0 0 0-1.13-.906h-1.273v-.047c0-.33-.01-.675-.04-1.046a.37.37 0 0 0-.372-.349h-11.568c-.2 0-.36.15-.375.349-.027.371-.038.716-.038 1.046v.047h-1.274a1.15 1.15 0 0 0-1.13.906l-.372 1.68c-.094.42.052.854.38 1.132.41.349 1.134.826 1.9 1.331.895.59 1.909 1.259 2.322 1.672.009.009.02.012.03.02.857 1.294 1.957 2.208 3.184 2.565v2.084h2.314v-2.085c1.227-.358 2.327-1.272 3.184-2.566.009-.007.02-.01.028-.018.413-.413 1.427-1.082 2.322-1.672.766-.505 1.49-.982 1.9-1.331.328-.278.474-.711.38-1.132zm-15.25 1.837c-.747-.492-1.453-.957-1.83-1.277a.405.405 0 0 1-.132-.398l.373-1.68a.405.405 0 0 1 .397-.318h1.297c.088 1.614.438 3.115.986 4.402a76.85 76.85 0 0 0-1.092-.729zm6.345-3.937l.66 1.994c.012.026.038.05.064.05h2.134c.077 0 .103.09.038.128l-1.72 1.232c-.025.012-.038.05-.025.076l.66 1.994c.025.063-.053.127-.117.076l-1.72-1.232a.112.112 0 0 0-.09 0l-1.72 1.232c-.052.038-.143-.013-.117-.076l.66-1.994c.012-.026 0-.064-.026-.076l-1.72-1.232c-.052-.038-.026-.127.038-.127h2.134c.026 0 .065-.025.065-.05l.66-1.995c.025-.076.129-.076.142 0zm8.04 2.66c-.376.32-1.081.784-1.828 1.277-.369.243-.742.49-1.09.727.548-1.286.898-2.786.985-4.4h1.296c.192 0 .356.13.398.319l.372 1.68a.404.404 0 0 1-.133.397zM147 136.375c.619 0 1.125.502 1.125 1.125v1.117a.376.376 0 0 1-.375.375h-7.496a.374.374 0 0 1-.375-.375V137.5c0-.623.502-1.125 1.125-1.125h5.996zm-1.511-1.793c.594 0 1.074.46 1.117 1.043h-5.211a1.123 1.123 0 0 1 1.116-1.043h2.978z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cuse fill%3D%22%2300162b%22 fill-rule%3D%22nonzero%22 transform%3D%22translate(-135 -121)%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D%3C%2Fsvg%3E%0D\\\");\\n display: inline-block; }\\n\\n.trophyTop h3 {\\n margin-bottom: 1rem 0; }\\n\\n.ranking {\\n list-style: none;\\n padding: 0; }\\n\\n.ranking li {\\n padding: 0 .5rem;\\n margin: 0;\\n line-height: 40px;\\n border-top: 1px solid #e8e7e7; }\\n\\n.ranking li:last-child {\\n border-bottom: 1px solid #e8e7e7; }\\n\\n.ranking li .icon {\\n text-align: center;\\n color: #fff;\\n font-size: 9px;\\n line-height: 10px; }\\n\\n.ranking li .you {\\n background-color: #E6EDFB; }\\n\\n.ranking li .you .icon {\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2218%22 height%3D%2218%22 viewBox%3D%220 0 18 18%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M100.972 120.028l-.372-1.68a1.15 1.15 0 0 0-1.13-.906h-1.273v-.047c0-.33-.01-.675-.04-1.046a.37.37 0 0 0-.372-.349H86.217c-.2 0-.36.15-.375.349-.027.371-.038.716-.038 1.046v.047H84.53a1.15 1.15 0 0 0-1.13.906l-.372 1.68c-.094.42.052.854.38 1.132.41.349 1.134.826 1.9 1.331.895.59 1.909 1.259 2.322 1.672.009.009.02.012.03.02.857 1.294 1.957 2.208 3.184 2.565v2.084h2.314v-2.085c1.227-.358 2.327-1.272 3.184-2.566.009-.007.02-.01.028-.018.413-.413 1.427-1.082 2.322-1.672.766-.505 1.49-.982 1.9-1.331.328-.278.474-.711.38-1.132zm-15.25 1.837c-.747-.492-1.453-.957-1.83-1.277a.405.405 0 0 1-.132-.398l.373-1.68a.405.405 0 0 1 .397-.318h1.297c.088 1.614.438 3.115.986 4.402a76.856 76.856 0 0 0-1.092-.729zm14.385-1.277c-.376.32-1.081.784-1.828 1.277-.369.243-.742.49-1.09.727.548-1.286.898-2.786.985-4.4h1.296c.192 0 .356.13.398.319l.372 1.68a.404.404 0 0 1-.133.397zM95 131.375c.619 0 1.125.502 1.125 1.125v1.117a.376.376 0 0 1-.375.375h-7.496a.374.374 0 0 1-.375-.375V132.5c0-.623.502-1.125 1.125-1.125h5.996zm-1.511-1.793c.594 0 1.074.46 1.117 1.043h-5.211a1.123 1.123 0 0 1 1.116-1.043h2.978z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cuse fill%3D%22%235685EB%22 fill-rule%3D%22nonzero%22 transform%3D%22translate(-83 -116)%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D%3C%2Fsvg%3E%0D\\\"); }\\n\\n.ranking li .ico-trophy {\\n -o-object-fit: contain;\\n object-fit: contain;\\n background-size: contain;\\n width: 20px;\\n height: 20px;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2218%22 height%3D%2218%22 viewBox%3D%220 0 18 18%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M100.972 120.028l-.372-1.68a1.15 1.15 0 0 0-1.13-.906h-1.273v-.047c0-.33-.01-.675-.04-1.046a.37.37 0 0 0-.372-.349H86.217c-.2 0-.36.15-.375.349-.027.371-.038.716-.038 1.046v.047H84.53a1.15 1.15 0 0 0-1.13.906l-.372 1.68c-.094.42.052.854.38 1.132.41.349 1.134.826 1.9 1.331.895.59 1.909 1.259 2.322 1.672.009.009.02.012.03.02.857 1.294 1.957 2.208 3.184 2.565v2.084h2.314v-2.085c1.227-.358 2.327-1.272 3.184-2.566.009-.007.02-.01.028-.018.413-.413 1.427-1.082 2.322-1.672.766-.505 1.49-.982 1.9-1.331.328-.278.474-.711.38-1.132zm-15.25 1.837c-.747-.492-1.453-.957-1.83-1.277a.405.405 0 0 1-.132-.398l.373-1.68a.405.405 0 0 1 .397-.318h1.297c.088 1.614.438 3.115.986 4.402a76.856 76.856 0 0 0-1.092-.729zm14.385-1.277c-.376.32-1.081.784-1.828 1.277-.369.243-.742.49-1.09.727.548-1.286.898-2.786.985-4.4h1.296c.192 0 .356.13.398.319l.372 1.68a.404.404 0 0 1-.133.397zM95 131.375c.619 0 1.125.502 1.125 1.125v1.117a.376.376 0 0 1-.375.375h-7.496a.374.374 0 0 1-.375-.375V132.5c0-.623.502-1.125 1.125-1.125h5.996zm-1.511-1.793c.594 0 1.074.46 1.117 1.043h-5.211a1.123 1.123 0 0 1 1.116-1.043h2.978z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cuse fill%3D%22%2300162b%22 fill-rule%3D%22nonzero%22 transform%3D%22translate(-83 -116)%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D%3C%2Fsvg%3E%0D\\\");\\n display: inline-block; }\\n\\n.ranking li .userName {\\n color: #000; }\\n\\n.ranking li .spotCount {\\n font-weight: bold;\\n color: #000; }\\n\"","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AppService } from 'app/app.service';\r\nimport { fadeInSlideAnimation } from 'animations';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport * as _ from 'lodash';\r\nimport { LoginProvider } from 'providers/login/login';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\ndeclare var window;\r\n\r\n@Component({\r\n selector: 'app-ranking',\r\n templateUrl: './ranking.component.html',\r\n styleUrls: ['./ranking.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class RankingComponent implements OnInit, OnDestroy {\r\n\r\n ranking: any[] = null;\r\n userLogOn: string = this.loginProvider.userName;\r\n isLoading: boolean = false;\r\n campaignId: string = null;\r\n selectedTabIndex: Number = 0;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private appService: AppService,\r\n private domainStorageProvider: DomainStorageProvider,\r\n public loginProvider: LoginProvider,\r\n private translateService: TranslateService,\r\n ) {\r\n this.showHideMenu(false);\r\n this.loadRanking();\r\n this.campaignId = this.route.snapshot.paramMap.get('campaignId');\r\n }\r\n\r\n async loadRanking() {\r\n this.isLoading = true;\r\n await this.domainStorageProvider.rootStore.getUserRanking();\r\n var ranking = this.domainStorageProvider.rootStore.rankings;\r\n\r\n if (ranking) {\r\n this.selectedTabIndex = 0;\r\n ranking.forEach((r, i) => {\r\n if (r.name && r.name.toLowerCase() == \"general\") {\r\n r.name = this.translateService.instant(\"RankingPage.GeneralRanking\");\r\n }\r\n else if (r.id && r.id == this.campaignId) {\r\n this.selectedTabIndex = i;\r\n }\r\n });\r\n this.ranking = ranking;\r\n\r\n //track\r\n this.trackTab(this.selectedTabIndex);\r\n }\r\n\r\n this.isLoading = false;\r\n }\r\n\r\n trackTab(selectedIndex:any){\r\n if(this.ranking && this.ranking[selectedIndex]){\r\n var url = \"/ranking/\" + (this.ranking[selectedIndex].shortName).trim();\r\n this.appService.SetWebTrekkPageView(url);\r\n }\r\n }\r\n\r\n onTabChange(event:any){\r\n //track\r\n this.trackTab(event.index);\r\n }\r\n\r\n getUserSpots(rank: any[]): number {\r\n if (rank != null) {\r\n let found = rank.find(r => r.logOn == this.userLogOn);\r\n if (found) {\r\n return found.score;\r\n }\r\n }\r\n return 0;\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n\r\n}\r\n","module.exports = \"
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

{{\\\"SearchPosPage.Title\\\" | translate}}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{selectedMarker.name}}
\\r\\n {{selectedMarker.address}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{newPosObject.name}}
\\r\\n {{newPosObject.address}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{\\\"SearchPosPage.CrosshairHint\\\" | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"#map {\\n width: 100%;\\n height: 100px;\\n min-height: 100%; }\\n\\n.content {\\n width: 100%;\\n height: 500px;\\n position: absolute; }\\n\\n.searchbar {\\n position: absolute;\\n top: .5rem;\\n left: .5rem;\\n right: .5rem;\\n padding: .5rem;\\n z-index: 1; }\\n\\n.form__input-group .form__input, .custominput .form__input {\\n background: #fff;\\n color: #000;\\n width: 100%;\\n font-weight: 200;\\n text-decoration: none;\\n font-family: 'bulltext';\\n border: 1px solid #d2cfd0;\\n font-size: 16px;\\n margin: 9px 0;\\n border-radius: 6px;\\n padding: 90px 9px; }\\n\\n.addMarkerFooter {\\n background: none;\\n text-align: center;\\n display: block; }\\n\\n.addMarkerFooter .button-circle {\\n border-radius: 100%;\\n height: 4rem;\\n width: 4rem;\\n font-size: 2rem;\\n margin: 1rem;\\n box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);\\n text-align: center; }\\n\\n.addMarkerFooter .button-circle-target {\\n position: absolute;\\n right: 0px;\\n top: 12px;\\n border-radius: 100%;\\n height: 2.2rem;\\n width: 2.2rem;\\n padding: 0;\\n padding-top: 5px;\\n font-size: 1rem;\\n margin: 1rem;\\n background-color: #FFFFFF;\\n box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);\\n text-align: center; }\\n\\n.addMarkerFooter .ico-location-target {\\n -o-object-fit: contain;\\n object-fit: contain;\\n background-size: contain;\\n width: 20px;\\n height: 20px;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2222%22 height%3D%2222%22 viewBox%3D%220 0 22 22%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M11 13.415c-1.27 0-2.302-1.084-2.302-2.415S9.73 8.585 11 8.585c1.27 0 2.302 1.084 2.302 2.415S12.27 13.415 11 13.415m0-5.903c-1.837 0-3.326 1.562-3.326 3.488s1.49 3.488 3.326 3.488c1.837 0 3.326-1.562 3.326-3.488S12.836 7.512 11 7.512m10.49 2.951c.281 0 .51.239.51.537a.524.524 0 0 1-.51.537h-3.091c-.252 3.863-3.204 6.958-6.887 7.223v2.705A.523.523 0 0 1 11 22a.524.524 0 0 1-.512-.535V18.76c-3.683-.265-6.635-3.36-6.887-7.223H.511A.523.523 0 0 1 0 11c0-.296.228-.537.51-.537h3.091C3.853 6.6 6.805 3.505 10.488 3.24V.535C10.488.24 10.716 0 11 0c.282 0 .512.24.512.535V3.24c3.683.265 6.635 3.36 6.887 7.223h3.09zM11 17.707c3.532 0 6.395-3.003 6.395-6.707 0-3.704-2.863-6.707-6.395-6.707-3.532 0-6.395 3.003-6.395 6.707 0 3.704 2.863 6.707 6.395 6.707z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cg fill%3D%22none%22 fill-rule%3D%22evenodd%22%3E%0D %3Cuse fill%3D%22%2311388D%22 fill-rule%3D%22nonzero%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\");\\n display: inline-block; }\\n\\n.addMarkerFooter .ico-plus {\\n -o-object-fit: contain;\\n object-fit: contain;\\n background-size: contain;\\n width: 26px;\\n height: 26px;\\n display: inline-block;\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2226%22 height%3D%2226%22 viewBox%3D%220 0 26 26%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M42 29.025H30.976V18a.976.976 0 0 0-1.951 0v11.025H18a.975.975 0 1 0 0 1.95h11.025V42a.976.976 0 0 0 1.951 0V30.975H42a.975.975 0 1 0 0-1.95z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cg fill%3D%22none%22 fill-rule%3D%22evenodd%22%3E%0D %3Cpath d%3D%22M-175-594h375V73h-375z%22%2F%3E%0D %3Cuse fill%3D%22%23FFF%22 fill-rule%3D%22nonzero%22 transform%3D%22translate(-17 -17)%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\"); }\\n\\n.selectedMarkerFooter {\\n display: block;\\n box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);\\n background: #fff; }\\n\\n.selectedMarkerFooter .topRow {\\n border-bottom: 1px solid #e8e7e7;\\n padding: 1.5rem; }\\n\\n.selectedMarkerFooter .topRow img {\\n max-width: 40px;\\n max-height: 40px; }\\n\\n.selectedMarkerFooter .bottomRow {\\n padding: 1.5rem; }\\n\"","import { Component, OnInit, OnDestroy, ViewChild, ElementRef, NgZone, ChangeDetectorRef, EventEmitter } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppService } from 'app/app.service';\r\nimport { GeolocalizationProvider } from \"../../providers/geolocalization/geolocalization\";\r\nimport { GmapsProvider } from 'providers/gmaps/gmaps';\r\n\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { fadeInSlideAnimation, fadeInAnimation } from 'animations';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { SpotData } from 'dto';\r\n\r\ndeclare var google: any;\r\ndeclare var window: any;\r\n//declare var Hammer: any;\r\n\r\n@Component({\r\n selector: 'app-searchpos',\r\n templateUrl: './searchpos.component.html',\r\n styleUrls: ['./searchpos.component.scss'],\r\n\r\n animations: [fadeInSlideAnimation, fadeInAnimation],\r\n host: { '[@fadeInSlideAnimation]': '' }\r\n})\r\nexport class SearchposComponent implements OnInit, OnDestroy {\r\n\r\n @ViewChild(\"map\") mapElement: ElementRef;\r\n @ViewChild(\"mapContainer\") mapContainer: ElementRef;\r\n\r\n mouseClickEventSubscription = null;\r\n selectedMarker: any = null;\r\n\r\n get posList(): any[] {\r\n return this.domainStorageProvider.rootStore.posList;\r\n }\r\n\r\n crosshairPlaceLoading = false;\r\n newPos: any = null;\r\n\r\n createMarker: boolean = false;\r\n crosshairMarker: any = null;\r\n showSearchBar: boolean = true;\r\n\r\n constructor(\r\n private router: Router,\r\n private appService: AppService,\r\n private zone: NgZone,\r\n\r\n public gmaps: GmapsProvider,\r\n public translationProvider: TranslationProvider,\r\n public translateService: TranslateService,\r\n public geolocalizationProvider: GeolocalizationProvider,\r\n private domainStorageProvider: DomainStorageProvider,\r\n private ref: ChangeDetectorRef\r\n ) {\r\n this.showHideMenu(false);\r\n }\r\n\r\n ngOnInit() {\r\n //reset selected POS\r\n this.domainStorageProvider.rootStore.selectedPOS.next(null);\r\n\r\n // Change position\r\n this.geolocalizationProvider.currentPosition.subscribe(data => {\r\n this.loadMap();\r\n }).unsubscribe();\r\n }\r\n\r\n onMapReady() {\r\n\r\n //load pins when map is loaded\r\n google.maps.event.addListenerOnce(this.gmaps.map, 'idle', (event) => {\r\n this.zone.run(async () => {\r\n this.updateMarkers();\r\n });\r\n });\r\n\r\n this.gmaps.map.addListener('dragstart', (event) => {\r\n if (this.crosshairMarker) {\r\n //back to angular scope\r\n this.zone.run(() => {\r\n this.crosshairPlaceLoading = false;\r\n this.newPos = null;\r\n });\r\n }\r\n });\r\n\r\n this.gmaps.map.addListener('dragend', (event) => {\r\n //back to angular scope\r\n this.zone.run(async () => {\r\n if (this.crosshairMarker) {\r\n await this.loadCrosshairMarkerInfo();\r\n }\r\n else{\r\n this.updateMarkers();\r\n }\r\n });\r\n });\r\n\r\n this.gmaps.map.addListener(\"zoom_changed\", (event) => {\r\n this.zone.run(async () => {\r\n if (!this.crosshairMarker) {\r\n this.updateMarkers();\r\n }\r\n });\r\n });\r\n }\r\n\r\n updateMarkers() {\r\n //update pins\r\n let mapCenterPosition = this.gmaps.map.getCenter();\r\n if(mapCenterPosition){\r\n this.loadPosData(false, mapCenterPosition);\r\n this.domainStorageProvider.rootStore.getPOSList({\r\n lat: mapCenterPosition.lat(),\r\n lng: mapCenterPosition.lng()\r\n });\r\n }\r\n }\r\n\r\n async loadCrosshairMarkerInfo() {\r\n this.crosshairPlaceLoading = true;\r\n try {\r\n let place = await this.gmaps.getPlace({\r\n lat: this.crosshairMarker.position.lat(),\r\n lng: this.crosshairMarker.position.lng()\r\n });\r\n this.newPos = place;\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n\r\n this.crosshairPlaceLoading = false;\r\n }\r\n\r\n onAutocompleteFocus() {\r\n this.cancelSelection();\r\n }\r\n\r\n onChooseFromMapClick() {\r\n this.cancelSelection();\r\n this.gmaps.centerCurrentPosition();\r\n }\r\n\r\n onSearchResultClick(marker) {\r\n //remove all markers\r\n this.gmaps.cleanUp();\r\n this.createMarker = true;\r\n\r\n //check for existing marker\r\n if (this.posList) {\r\n var existingMarker = this.posList.find(m => {\r\n return marker.location.lat == m.location.lat && marker.location.lng == m.location.lng;\r\n });\r\n\r\n if (existingMarker) {\r\n marker = existingMarker;\r\n this.createMarker = false;\r\n }\r\n }\r\n\r\n //show selected marker\r\n this.selectedMarker = marker;\r\n\r\n this.gmaps.createMarker(marker);\r\n this.gmaps.centerMarker(marker.id);\r\n };\r\n\r\n onMyLocationClick() {\r\n this.gmaps.centerCurrentPosition();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n\r\n clearOptions() {\r\n this.deselectMarker();\r\n this.selectedMarker = null;\r\n /*if (!this.ref['destroyed'])\r\n this.ref.detectChanges();*/\r\n }\r\n\r\n cancelSelection() {\r\n this.createMarker = false;\r\n if (this.selectedMarker != null) {\r\n this.clearOptions();\r\n this.updateMarkers();\r\n }\r\n }\r\n\r\n async loadMap() {\r\n\r\n // Create map\r\n await this.gmaps.createMap(\r\n this.mapElement,\r\n this.selectedMarker ? this.selectedMarker.location : null\r\n );\r\n\r\n //set map height\r\n let headerbarHeight = 62;\r\n this.mapContainer.nativeElement.style.height = (window.innerHeight - headerbarHeight) + \"px\";\r\n google.maps.event.addDomListener(window, \"resize\", () => {\r\n this.mapContainer.nativeElement.style.height = (window.innerHeight - headerbarHeight) + \"px\";\r\n });\r\n\r\n this.mouseClickEventSubscription = this.gmaps.markerSelected.subscribe(\r\n (res) => {\r\n this.zone.run(() => {\r\n this.clickMarker(res);\r\n });\r\n }\r\n );\r\n\r\n this.onMapReady();\r\n }\r\n\r\n async loadPosData(centerPosition: boolean = true, position: any = null) {\r\n this.gmaps.cleanUp();\r\n if (this.posList) {\r\n this.posList.forEach((element, index) => {\r\n this.gmaps.createMarker(element);\r\n });\r\n }\r\n\r\n if (position) {\r\n await this.gmaps.findPlacesAt(position);\r\n }\r\n else {\r\n // Current position\r\n // await this.gmaps.findPlaces();\r\n }\r\n\r\n // Current position\r\n await this.gmaps.findPlaces();\r\n\r\n if (centerPosition) {\r\n await this.centerPosition();\r\n }\r\n }\r\n\r\n async centerPosition() {\r\n await this.gmaps.centerCurrentPosition();\r\n }\r\n\r\n deselectMarker() {\r\n if (this.selectedMarker && this.selectedMarker.id === \"temporary\") {\r\n this.gmaps.deleteMarker(this.selectedMarker);\r\n }\r\n }\r\n\r\n selectMarker() {\r\n this.gmaps.filterBy(this.selectedMarker.id, \"id\", true);\r\n }\r\n\r\n selectExistingMarker() {\r\n\r\n this.setSelectedMarker(this.selectedMarker);\r\n\r\n this.domainStorageProvider.rootStore.spotData.next(new SpotData(\r\n this.domainStorageProvider.rootStore.selectedPOS.value,\r\n this.domainStorageProvider.rootStore.getSelectedGroup()\r\n ));\r\n\r\n this.router.navigate([\"/newspot\"]);\r\n }\r\n\r\n selectNewMarkerFromCrossHair() {\r\n if (this.crosshairMarker) {\r\n\r\n var contentId = this.appService.url2contentId(\"/new_pos\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'button', 2: 'footer' } }]);\r\n\r\n this.setSelectedMarker(this.newPos);\r\n this.zone.run(() => { this.router.navigate([\"/newpos\"]) });;\r\n }\r\n }\r\n\r\n selectNewMarker() {\r\n this.setSelectedMarker(this.selectedMarker);\r\n this.router.navigate([\"/newpos\"]);\r\n }\r\n\r\n setSelectedMarker(marker) {\r\n this.domainStorageProvider.rootStore.selectedPOS.next(marker);\r\n }\r\n\r\n /*\r\n findPOS() {\r\n this.gmaps.filterBy(this.posTextField, \"name\");\r\n }\r\n */\r\n\r\n clickMarker(marker) {\r\n this.selectedMarker = marker;\r\n this.gmaps.centerMarker(marker.id);\r\n this.gmaps.filterBy(marker.id, \"id\", true);\r\n }\r\n\r\n // Adicionar novo ponto\r\n showCrosshairSelection() {\r\n var contentId = this.appService.url2contentId(\"/add_position\");\r\n window.wts.push(['send', 'click', { linkId: contentId, customClickParameter: { 1: 'button', 2: 'map' } }]);\r\n\r\n //remove all markers\r\n this.gmaps.cleanUp();\r\n this.createMarker = true;\r\n this.newPos = null;\r\n this.showSearchBar = false;\r\n\r\n this.crosshairMarker = this.gmaps.createCrosshairMarker();\r\n\r\n //load current marker position info\r\n if (this.crosshairMarker) {\r\n this.loadCrosshairMarkerInfo();\r\n }\r\n }\r\n\r\n cancelCreateMarker() {\r\n this.gmaps.cleanUp();\r\n this.createMarker = false;\r\n this.newPos = null;\r\n this.showSearchBar = true;\r\n this.crosshairMarker = null;\r\n \r\n this.clearOptions();\r\n //this.updateMarkers();\r\n this.onMapReady();\r\n }\r\n}\r\n\r\n","import { NgModule } from \"@angular/core\";\r\nimport { SharedModule } from \"app/shared.module\";\r\nimport { SearchposComponent } from \"./searchpos.component\";\r\nimport { GmapsProvider } from \"providers/gmaps/gmaps\";\r\nimport { DomainStorageProvider } from \"providers/domain-storage/domain-storage\";\r\nimport { RemoteServicesProvider } from \"providers/remote-services/remote-services\";\r\nimport { LoginProvider } from \"providers/login/login\";\r\nimport { TranslationProvider } from \"providers/translation/translation\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { GeolocalizationProvider } from \"providers/geolocalization/geolocalization\";\r\nimport { AutocompleteComponent } from \"app/autocomplete/autocomplete.component\";\r\n\r\n@NgModule({\r\n\tdeclarations: [SearchposComponent, AutocompleteComponent],\r\n\timports: [\r\n\t\tSharedModule\r\n\t],\r\n\texports: [SearchposComponent],\r\n\tproviders: [\r\n\t\tGmapsProvider,\r\n\t\tDomainStorageProvider,\r\n\t\tRemoteServicesProvider,\r\n\t\tLoginProvider,\r\n\t\tTranslationProvider,\r\n\t\tTranslateService,\r\n\t\tGeolocalizationProvider\r\n\t]\r\n})\r\nexport class SearchposModule { }\r\n","import { NgModule } from \"@angular/core\";\r\nimport { HttpClientModule, HttpClient } from \"@angular/common/http\";\r\nimport { TranslateModule, TranslateLoader } from \"@ngx-translate/core\";\r\nimport { TranslateHttpLoader } from \"@ngx-translate/http-loader\";\r\n\r\nexport function createTranslateLoader(http: HttpClient) {\r\n\treturn new TranslateHttpLoader(http, \"./assets/i18n/\", \".json\");\r\n}\r\n\r\nimport {\r\n\tHeaderBarModule,\r\n\tAccordionModule,\r\n\tBasicHeaderModule,\r\n\tBreadcrumbModule,\r\n\tCardGroupModule,\r\n\tCardModule,\r\n\tCollapseModule,\r\n\tContentBlockModule,\r\n\tDatepickerModule,\r\n\tFileuploadModule,\r\n\tFooterbarModule,\r\n\tFormModule,\r\n\tHeaderModule,\r\n\tListModule,\r\n\tLoadingSpinnerModule,\r\n\tMessageModule,\r\n\tOverlayModule,\r\n\tPageHeaderModule,\r\n\tPaginationModule,\r\n\tPopoverModule,\r\n\tScrollableModule,\r\n\tTableElementsModule,\r\n\tTableModule,\r\n\tTabViewModule,\r\n\tTimepickerModule,\r\n\tTooltipModule\r\n} from 'rb-core-library';\r\nimport { FormsModule } from \"@angular/forms\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { RouterModule } from \"@angular/router\";\r\n\r\nconst MODULES = [\r\n\tHeaderBarModule,\r\n\tAccordionModule,\r\n\tBasicHeaderModule,\r\n\tBreadcrumbModule,\r\n\tCardModule,\r\n\tCardGroupModule,\r\n\tCollapseModule,\r\n\tContentBlockModule,\r\n\tDatepickerModule,\r\n\tFileuploadModule,\r\n\tFooterbarModule,\r\n\tFormModule,\r\n\tHeaderModule,\r\n\tListModule,\r\n\tLoadingSpinnerModule,\r\n\tMessageModule,\r\n\tOverlayModule,\r\n\tPageHeaderModule,\r\n\tPaginationModule,\r\n\tPopoverModule,\r\n\tScrollableModule,\r\n\tTabViewModule,\r\n\tTableElementsModule,\r\n\tTableModule,\r\n\tTooltipModule,\r\n\tTimepickerModule\r\n];\r\n\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\tTranslateModule.forRoot({\r\n\t\t\tloader: {\r\n\t\t\t\tprovide: TranslateLoader,\r\n\t\t\t\tuseFactory: createTranslateLoader,\r\n\t\t\t\tdeps: [HttpClient]\r\n\t\t\t}\r\n\t\t}),\r\n HttpClientModule,\r\n\t\t...MODULES\r\n\t],\r\n\texports: [\r\n\t\tTranslateModule,\r\n\t\tFormsModule,\r\n CommonModule,\r\n RouterModule,\r\n\t\t...MODULES\r\n\t]\r\n})\r\nexport class SharedModule { }\r\n","module.exports = \"\\r\\n

{{ \\\"SyncBarComponent.CancelSyncModalSubTitleLabel\\\" | translate }}

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{ \\\"SyncBarComponent.PendingSpotsLabel\\\" | translate:{ value: localStorageProvider.getCountPosKey() } }}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"SyncBarComponent.SendingSpotLabel\\\" | translate }}...\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \".content-container {\\n background: #fff;\\n padding: 2px; }\\n .content-container .container-syncbar {\\n display: flex;\\n justify-content: center;\\n padding: 1rem;\\n width: 100%;\\n text-align: center; }\\n .content-container .message-box,\\n .content-container .syncing-container {\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n height: 100%;\\n width: 100%;\\n text-align: center; }\\n .content-container .buttonResync {\\n float: right; }\\n .content-container .buttonCancel {\\n float: left; }\\n\"","import { Component } from \"@angular/core\";\r\nimport { LocalstorageProvider } from \"providers/localstorage/localstorage\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { RemoteServicesProvider } from \"providers/remote-services/remote-services\";\r\nimport { LoginProvider } from \"providers/login/login\";\r\nimport { PopupMessage, MessageService } from \"rb-core-library\";\r\n\r\n\r\n/**\r\n * Generated class for the SyncBarComponent component.\r\n *\r\n * See https://angular.io/api/core/Component for more info on Angular\r\n * Components.\r\n */\r\n@Component({\r\n selector: \"sync-bar\",\r\n templateUrl: \"sync-bar.component.html\",\r\n styleUrls: ['sync-bar.component.scss']\r\n})\r\nexport class SyncBarComponent {\r\n text: string;\r\n isSyncing: boolean = false;\r\n showConfirmation: boolean = false;\r\n\r\n constructor(\r\n private localStorageProvider: LocalstorageProvider,\r\n private translateService: TranslateService,\r\n private remoteServicesProvider: RemoteServicesProvider,\r\n private loginProvider: LoginProvider,\r\n public messageService: MessageService\r\n ) { \r\n this.messageService.popupMessage = null;\r\n }\r\n\r\n async resync() {\r\n this.isSyncing = true;\r\n let keys = this.localStorageProvider.getPosKeys();\r\n\r\n for (let i = 0; i < keys.length; i++) {\r\n let key = keys[i];\r\n let data = this.localStorageProvider.read(key);\r\n let serverError = false;\r\n\r\n let doSync = await this.remoteServicesProvider\r\n .sendSpot(data, this.loginProvider.token)\r\n .catch(err => {\r\n let popupMessage: PopupMessage = {\r\n type: 'danger',\r\n text: this.translateService.instant(err.status === '401' ? \"App.AccessDenied\" : \"App.GenericError\"),\r\n timeout: 3000\r\n };\r\n this.messageService.addMessage(popupMessage);\r\n\r\n serverError = true;\r\n });\r\n\r\n if (doSync) {\r\n this.localStorageProvider.remove(key);\r\n }\r\n\r\n if (serverError) {\r\n break;\r\n }\r\n }\r\n\r\n this.isSyncing = false;\r\n }\r\n\r\n hasItemsToSync() {\r\n return this.localStorageProvider.getCountPosKey() > 0;\r\n }\r\n\r\n presentConfirm() {\r\n this.showConfirmation = true;\r\n }\r\n\r\n discard() {\r\n this.localStorageProvider.clear();\r\n this.hide();\r\n }\r\n hide() {\r\n this.showConfirmation = false;\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { SyncBarComponent } from \"./sync-bar.component\";\r\nimport { SharedModule } from \"app/shared.module\";\r\n\r\n@NgModule({\r\n declarations: [SyncBarComponent],\r\n imports: [SharedModule],\r\n exports: [SyncBarComponent]\r\n})\r\nexport class SyncBarModule { }\r\n","module.exports = \"
\\r\\n\\r\\n\\t\\r\\n\\t\\t
\\r\\n\\t\\t\\t\\r\\n\\t\\t\\t

{{\\\"TipsPage.Title\\\" | translate}}

\\r\\n\\t\\t
\\r\\n\\t
\\r\\n\\r\\n\\t
\\r\\n\\t\\t
\\r\\n\\t\\t\\t\\r\\n\\t\\t\\t

{{\\\"TipsPage.GoodToKnow\\\" | translate}}

\\r\\n\\t\\t
\\r\\n\\r\\n
\\r\\n {{\\\"SearchPosPage.NoResultsFound\\\" | translate}}\\r\\n
\\r\\n \\r\\n\\t\\t
\\r\\n {{ item[\\\"text\\\"+translationProvider.getLanguageName()] }}\\r\\n\\t\\t
\\r\\n\\t
\\r\\n
\"","module.exports = \".tipContainer {\\n background-color: #fff;\\n padding: 1.5rem;\\n text-align: center;\\n margin: 0 1rem 1rem 1rem;\\n font-family: \\\"Bull\\\", sans-serif;\\n font-size: 18px;\\n font-weight: 800;\\n letter-spacing: 0.09px;\\n line-height: 1.25;\\n text-transform: uppercase;\\n border: 0; }\\n\\nh3 {\\n font-size: 1rem;\\n margin: 1rem 2.5rem 2.5rem 2.5rem; }\\n\\n.ico-tips {\\n margin-top: 2.5rem;\\n width: 80px;\\n height: 80px;\\n -o-object-fit: contain;\\n object-fit: contain;\\n color: #00162b;\\n display: inline-block;\\n background-size: contain;\\n background: url(\\\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2280%22 height%3D%2280%22 viewBox%3D%220 0 80 80%22%3E%0D %3Cdefs%3E%0D %3Cpath id%3D%22a%22 d%3D%22M75 0H4.998A4.996 4.996 0 0 0 0 5v50c0 2.763 2.235 5 4.997 5h25l10 20 10-20H75c2.763 0 5-2.237 5-5V5c0-2.763-2.237-5-5-5z%22%2F%3E%0D %3C%2Fdefs%3E%0D %3Cg fill%3D%22none%22 fill-rule%3D%22evenodd%22%3E%0D %3Cpath fill%3D%22%23F7F6F6%22 d%3D%22M-148-125h375v667h-375z%22%2F%3E%0D %3Cg%3E%0D %3Cmask id%3D%22b%22 fill%3D%22%23fff%22%3E%0D %3Cuse xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3C%2Fmask%3E%0D %3Cuse fill%3D%22%2300162b%22 fill-rule%3D%22nonzero%22 xlink%3Ahref%3D%22%23a%22%2F%3E%0D %3Cpath fill%3D%22%23FFF%22 fill-rule%3D%22nonzero%22 d%3D%22M48.917 15.878c-4.917-2.774-11.88-1.731-14.996 3.54-3.813 6.452-.121 10.721-2.062 15.203l8.972 5.061c3.003-3.883 8.634-2.895 12.446-9.346 3.116-5.272.558-11.684-4.36-14.458zm-17.94 20.348l-.93 1.576 8.871 5.004.932-1.576-8.872-5.004zm-1.862 3.151l-.465.788c-.535.906-.17 2.006.681 2.486l1.21.682-.466.788a1.793 1.793 0 0 0 .682 2.486 1.883 1.883 0 0 0 2.545-.666l.465-.788 1.21.682c.851.48 2.01.24 2.544-.666l.466-.788-8.872-5.004z%22 mask%3D%22url(%23b)%22 transform%3D%22rotate(-30 41.519 30.619)%22%2F%3E%0D %3C%2Fg%3E%0D %3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\\\"); }\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppService } from 'app/app.service';\r\nimport { Router } from '@angular/router';\r\nimport { DomainStorageProvider } from 'providers/domain-storage/domain-storage';\r\nimport { TranslationProvider } from 'providers/translation/translation';\r\n\r\n@Component({\r\n selector: 'app-tips',\r\n templateUrl: './tips.component.html',\r\n styleUrls: ['./tips.component.scss']\r\n})\r\nexport class TipsComponent implements OnInit {\r\n\r\n constructor(\r\n private router: Router,\r\n private appService: AppService,\r\n private domainStorageProvider: DomainStorageProvider,\r\n public translationProvider: TranslationProvider,\r\n ) {\r\n this.showHideMenu(false);\r\n }\r\n\r\n tips: any[];\r\n\r\n ngOnInit() {\r\n this.tips = this.domainStorageProvider.rootStore.tips;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.showHideMenu(true);\r\n }\r\n\r\n showHideMenu(show) {\r\n this.appService.onMainMenuEvent.emit(show);\r\n }\r\n\r\n back() {\r\n this.router.navigate([\"/\"]);\r\n }\r\n}\r\n","export * from './spotdata';","\r\nimport { v4 as uuid } from \"uuid\";\r\nimport * as _ from \"lodash\";\r\n\r\nexport class SpotData {\r\n photos = [];\r\n groupId = null;\r\n notes = null;\r\n products = null;\r\n posMeta = null;\r\n groupMeta = null;\r\n\r\n constructor(posMeta, groupMeta) {\r\n this.groupId = groupMeta.id;\r\n this.posMeta = posMeta;\r\n this.groupMeta = groupMeta;\r\n }\r\n\r\n countValidProducts() {\r\n if (!this.products) {\r\n return 0;\r\n }\r\n let result = _.filter(this.products, data => {\r\n return data.checked === true;\r\n });\r\n return result.length;\r\n }\r\n\r\n countNotes() {\r\n if (!this.notes) {\r\n return 0;\r\n }\r\n return Object.keys(this.notes).length;\r\n }\r\n\r\n isValid(requiredImage = false, requiredSurvey = false, requiredProduct = false) {\r\n // Photos\r\n let index = _.findIndex(this.photos, function (o) {\r\n return o === null;\r\n });\r\n let isProcessingImage = index !== -1;\r\n let photoIsValid = this.photos.length > 0;\r\n let productsIsValid = this.countValidProducts() > 0;\r\n let notesIsValid = this.countNotes() > 0;\r\n\r\n if(isProcessingImage !== false){\r\n return false;\r\n }\r\n else if(!requiredImage && !requiredProduct && !requiredSurvey){\r\n return photoIsValid || productsIsValid || notesIsValid; // at least one should be filled\r\n }\r\n else {\r\n return (!requiredImage || photoIsValid)\r\n && (!requiredProduct || productsIsValid) \r\n && (!requiredSurvey || notesIsValid)\r\n };\r\n }\r\n\r\n setProducts(products) {\r\n this.products = products;\r\n }\r\n\r\n setNotes(notes) {\r\n this.notes = notes;\r\n }\r\n\r\n createOrUpdatePhoto(photo) {\r\n if (photo) {\r\n let index = _.findIndex(this.photos, function (o) {\r\n return o === null;\r\n });\r\n if (index > -1) {\r\n this.photos[index] = { id: uuid(), data: photo };\r\n }\r\n } else {\r\n this.photos.push(null);\r\n }\r\n }\r\n\r\n removeInvalidPhoto() {\r\n let index = _.findIndex(this.photos, function (o) {\r\n return o === null;\r\n });\r\n if (index > -1) {\r\n this.photos.splice(index, 1);\r\n }\r\n }\r\n\r\n removePhoto(photo) {\r\n let index = _.findIndex(this.photos, function (o) {\r\n return o !== null && o.id === photo.id;\r\n });\r\n if (index > -1) {\r\n this.photos.splice(index, 1);\r\n }\r\n }\r\n\r\n generateOutput() {\r\n let products = [];\r\n _.each(this.products, (element, key) => {\r\n if (element.checked) {\r\n products.push({\r\n ProductId: key,\r\n Price: element.value\r\n });\r\n }\r\n });\r\n\r\n let answers = [];\r\n _.each(this.notes, (element, key) => {\r\n if (element instanceof Array) {\r\n _.each(element, internalData => {\r\n let register: any = {\r\n QuestionId: key\r\n };\r\n register.AnswerId = internalData;\r\n answers.push(register);\r\n });\r\n } else if (element) {\r\n let register: any = {\r\n QuestionId: key\r\n };\r\n\r\n if (typeof element === \"string\") {\r\n register.Comments = element;\r\n answers.push(register);\r\n } else if (typeof element === \"object\") {\r\n for (var keyLoop in element) {\r\n let register: any = {\r\n QuestionId: key\r\n };\r\n // check also if property is not inherited from prototype\r\n if (element.hasOwnProperty(keyLoop) && element[keyLoop] == true) {\r\n register.AnswerId = parseInt(keyLoop);\r\n answers.push(register);\r\n }\r\n }\r\n } else {\r\n register.AnswerId = element;\r\n answers.push(register);\r\n }\r\n }\r\n });\r\n let photos = this.photos.map(x => {\r\n return x.data;\r\n });\r\n return {\r\n POSId: this.posMeta.id,\r\n SpotProducts: products,\r\n groupId: this.groupId,\r\n Answers: answers,\r\n photos: photos\r\n };\r\n }\r\n}\r\n\r\n","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n webApiUrl: \"https://psapp-staging.redbull.com/psappapi\",\r\n //webApiUrl: \"https://psapp.redbull.local.t4.srv.br/psappapi\",\r\n googleApiKey: \"AIzaSyBaHQ9pPP1xXGQqCN-kMdypnp0SAoRKSqQ\",\r\n webTrekkPagePrefix: \"psapp-local\",\r\n webTrekkTiId: \"504461681326050\"\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule);\r\n","import { LocalstorageProvider } from \"./../localstorage/localstorage\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport configApp from \"../../psapp-config\";\r\n\r\n/*\r\n Generated class for the AppcacheManagerProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class AppcacheManagerProvider {\r\n constructor(private localstorageProvider: LocalstorageProvider) {}\r\n\r\n isAppCache() {\r\n //return true;\r\n return !(\"serviceWorker\" in navigator);\r\n }\r\n\r\n isAppCacheValid(key) {\r\n return this.isAppCache() && this.checkBlackList(key);\r\n }\r\n\r\n checkBlackList(key) {\r\n if (configApp.endPoints.Login.indexOf(key) !== -1) {\r\n return false;\r\n }\r\n\r\n if (configApp.endPoints.PostPOS.indexOf(key) !== -1) {\r\n return false;\r\n }\r\n\r\n if (configApp.endPoints.PostSpot.indexOf(key) !== -1) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n saveCache(key, data) {\r\n this.localstorageProvider.write(key, data);\r\n }\r\n\r\n restoreCache(key) {\r\n return this.localstorageProvider.read(key);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { RootStore } from \"../../stores/root-store\";\r\nimport { LoginProvider } from \"../login/login\";\r\n\r\n/*\r\n Generated class for the DomainStorageProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class DomainStorageProvider {\r\n\r\n constructor(\r\n public rootStore: RootStore,\r\n public loginProvider: LoginProvider\r\n ) {\r\n this.rootStore = this.rootStore;\r\n }\r\n\r\n async doLogin(login, password) {\r\n let resultLogin = await this.loginProvider.doLogin(login, password);\r\n return resultLogin;\r\n }\r\n\r\n async getConfigData(autoSelectGroup = true) {\r\n return await this.rootStore.loadConfig(autoSelectGroup);\r\n }\r\n\r\n startupLoadData() {\r\n this.loginProvider.setConfigLoaded(true);\r\n return this.rootStore.startupLoadData();\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BehaviorSubject } from \"rxjs\";\r\ndeclare var navigator;\r\n\r\n/*\r\n Generated class for the GeolocalizationProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class GeolocalizationProvider {\r\n currentPosition: BehaviorSubject;\r\n initialPosition: BehaviorSubject;\r\n idWatcher: number = null;\r\n private options = {\r\n enableHighAccuracy: true,\r\n timeout: 6000,\r\n maximumAge: 0\r\n };\r\n\r\n constructor() {\r\n this.currentPosition = new BehaviorSubject(null);\r\n }\r\n\r\n async getCurrentPosition() {\r\n return new Promise((success, error) => {\r\n navigator.geolocation.getCurrentPosition(\r\n position => {\r\n let pos = {\r\n lat: position.coords.latitude,\r\n lng: position.coords.longitude\r\n };\r\n this.currentPosition.next(pos);\r\n success(pos);\r\n },\r\n this.errorHandler,\r\n this.options\r\n );\r\n });\r\n }\r\n\r\n async isBlocked() {\r\n return new Promise((success, error) => {\r\n // Default\r\n if (navigator.permission) {\r\n navigator.permissions\r\n .query({ name: \"geolocation\" })\r\n .then(permission => success(permission.state === \"denied\"));\r\n }\r\n // Fallback - IOS\r\n else {\r\n navigator.geolocation.getCurrentPosition(\r\n position => {\r\n success(false);\r\n },\r\n function (error) {\r\n if (error.code == error.PERMISSION_DENIED) {\r\n success(true);\r\n }\r\n success(false);\r\n },\r\n this.options\r\n );\r\n }\r\n });\r\n }\r\n\r\n startWatcher() {\r\n if (this.idWatcher === null) {\r\n this.idWatcher = navigator.geolocation.watchPosition(\r\n pos => {\r\n let kmDistance = -1;\r\n\r\n if(this.currentPosition.value){\r\n kmDistance = calculateDistance(\r\n this.currentPosition.value.lat,\r\n this.currentPosition.value.lng,\r\n pos.coords.latitude,\r\n pos.coords.longitude\r\n );\r\n }\r\n\r\n if(kmDistance == -1 || kmDistance >= 1){\r\n\r\n let posData = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n kmDistance: kmDistance\r\n };\r\n this.currentPosition.next(posData);\r\n }\r\n },\r\n this.errorHandler,\r\n this.options\r\n );\r\n }\r\n }\r\n\r\n stopWatcher() {\r\n if (this.idWatcher !== null) {\r\n navigator.geolocation.clearWatch(this.idWatcher);\r\n this.idWatcher = null;\r\n }\r\n }\r\n\r\n private errorHandler(err) {\r\n console.log(err);\r\n }\r\n}\r\n\r\n//This uses the ‘haversine’ formula to calculate the great-circle distance between two points\r\nfunction calculateDistance(lat1, lon1, lat2, lon2) {\r\n let R = 6371; // Radius of the earth in km \r\n let dLat = toRad(lat2 - lat1); // deg2rad below\r\n let dLon = toRad(lon2 - lon1);\r\n\r\n lat1 = toRad(lat1);\r\n lat2 = toRad(lat2);\r\n\r\n let a =\r\n Math.sin(dLat / 2) * Math.sin(dLat / 2) +\r\n Math.sin(dLon / 2) * Math.sin(dLon / 2) * Math.cos(lat1) * Math.cos(lat2);\r\n\r\n let c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n let d = R * c;\r\n return d;\r\n\r\n // Converts numeric degrees to radians\r\n function toRad(Value) {\r\n return Value * (Math.PI / 180);\r\n }\r\n}\r\n","import { GeolocalizationProvider } from \"./../geolocalization/geolocalization\";\r\nimport { Injectable, Output, EventEmitter, ElementRef } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { v4 as uuid } from \"uuid\";\r\nimport * as _ from \"lodash\";\r\ndeclare var google: any;\r\n/*\r\n Generated class for the GmapsProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class GmapsProvider {\r\n filter = null;\r\n map: any;\r\n latlng: any;\r\n placeServices: any;\r\n markers: any[] = [];\r\n visibleMarkers: any[] = [];\r\n currentPosition = null;\r\n @Output() markerSelected = new EventEmitter();\r\n @Output() mapClicked = new EventEmitter();\r\n\r\n constructor(public geolocalizationProvider: GeolocalizationProvider,\r\n public translateService: TranslateService) {\r\n this.geolocalizationProvider.currentPosition.subscribe(data => {\r\n this.currentPosition = data;\r\n });\r\n }\r\n\r\n async getPlace(markerSelected) {\r\n\r\n return new Promise((resolve, reject) => {\r\n let place: any = null;\r\n let geocoder = new google.maps.Geocoder;\r\n let latlng = { lat: parseFloat(markerSelected.lat), lng: parseFloat(markerSelected.lng) };\r\n geocoder.geocode({ 'location': latlng }, function (results, status) {\r\n if (status === 'OK') {\r\n if (results[0]) {\r\n place = {\r\n id: \"newMarker\",\r\n name: \"\",\r\n address: results[0].formatted_address,\r\n location: latlng,\r\n origin: \"google\",\r\n };\r\n resolve(place);\r\n } else {\r\n reject(new Error('No results found'));\r\n }\r\n } else {\r\n reject(new Error('Geocoder failed due to: ' + status));\r\n }\r\n });\r\n });\r\n }\r\n\r\n //'M' is statute miles\r\n //'K' is kilometers (default)\r\n //'N' is nautical miles\r\n distanceBetween(lat1, lon1, lat2, lon2, unit = 'K') {\r\n if ((lat1 == lat2) && (lon1 == lon2)) {\r\n return 0;\r\n }\r\n else {\r\n var radlat1 = Math.PI * lat1 / 180;\r\n var radlat2 = Math.PI * lat2 / 180;\r\n var theta = lon1 - lon2;\r\n var radtheta = Math.PI * theta / 180;\r\n var dist = Math.sin(radlat1) * Math.sin(radlat2) + Math.cos(radlat1) * Math.cos(radlat2) * Math.cos(radtheta);\r\n if (dist > 1) {\r\n dist = 1;\r\n }\r\n dist = Math.acos(dist);\r\n dist = dist * 180 / Math.PI;\r\n dist = dist * 60 * 1.1515;\r\n if (unit == \"K\") { dist = dist * 1.609344 }\r\n if (unit == \"N\") { dist = dist * 0.8684 }\r\n return dist;\r\n }\r\n }\r\n\r\n getRadiusFromZoom() {\r\n if (!this.map)\r\n return 0;\r\n\r\n let visibleRegion = this.map.getBounds();\r\n let dist = 0;\r\n\r\n if (visibleRegion) {\r\n let distance = this.distanceBetween(\r\n visibleRegion.getNorthEast().lat(),\r\n visibleRegion.getNorthEast().lng(),\r\n visibleRegion.getSouthWest().lat(),\r\n visibleRegion.getSouthWest().lng(),\r\n 'K'\r\n ) * 1000; //convert Km to meters\r\n\r\n //radius in meters\r\n dist = distance / 2;\r\n }\r\n\r\n return dist ? dist : 1000;\r\n }\r\n\r\n async findPlacesAt(location) {\r\n let request = {\r\n location: location,\r\n radius: this.getRadiusFromZoom(),\r\n fields: ['photos', 'address_component']\r\n };\r\n\r\n //debug search radius\r\n /**************************\r\n \r\n new google.maps.Circle({\r\n strokeColor: '#FF0000',\r\n strokeOpacity: 0.8,\r\n strokeWeight: 2,\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.35,\r\n map: this.map,\r\n center: location,\r\n radius: request.radius\r\n });\r\n \r\n **************************/\r\n\r\n this.doSearchPlaces(request).then((results: any[]) => {\r\n results.forEach(data => {\r\n let tmpSpots = this.visibleMarkers.concat(this.markers);\r\n\r\n // filter marks on same position\r\n let foundItemIndex = _.findIndex(tmpSpots, item => {\r\n return (\r\n item.marker.position.lat() == data.location.lat &&\r\n item.marker.position.lng() == data.location.lng\r\n );\r\n });\r\n if (foundItemIndex === -1) {\r\n this.createMarker(data);\r\n }\r\n });\r\n });\r\n }\r\n\r\n async findPlaces() {\r\n if (this.currentPosition) {\r\n //console.log(\"places updated\");\r\n this.findPlacesAt(this.currentPosition);\r\n this.createCurrentPositionMarker();\r\n }\r\n else {\r\n //console.log(\"current position is null\");\r\n }\r\n }\r\n\r\n createCurrentPositionMarker() {\r\n let marker = new google.maps.Marker({\r\n position: new google.maps.LatLng(this.currentPosition.lat, this.currentPosition.lng),\r\n icon: 'assets/imgs/marker-current-position.svg',\r\n });\r\n\r\n this.addMarkerVisible({ meta: { id: 'currentPosition' }, marker: marker });\r\n }\r\n\r\n async searchPlaces(keywords: string) {\r\n return new Promise(async (resolve, reject) => {\r\n let mapCenter = this.map.getCenter();\r\n if (mapCenter) {\r\n //console.log(\"Searching places...\");\r\n\r\n let request = {\r\n keyword: keywords,\r\n location: mapCenter,\r\n radius: this.getRadiusFromZoom(),\r\n fields: ['photos', 'address_component']\r\n };\r\n\r\n this.doSearchPlaces(request)\r\n .then((results: any[]) => {\r\n resolve(results);\r\n })\r\n .catch((e) => reject(e));\r\n }\r\n else {\r\n reject(new Error(\"Current position is null\"));\r\n }\r\n });\r\n }\r\n\r\n doSearchPlaces(request: any) {\r\n\r\n return new Promise((resolve) => {\r\n var finalResults: any[] = [];\r\n\r\n this.placeServices.nearbySearch(request, (results, status) => {\r\n if (status == google.maps.places.PlacesServiceStatus.OK) {\r\n\r\n for (let i = 0; i < results.length; i++) {\r\n let place = results[i];\r\n\r\n let data = {\r\n id: uuid(),\r\n icon: place.icon,\r\n name: place.name,\r\n address: place.vicinity,\r\n origin: \"google\",\r\n location: {\r\n lat: place.geometry.location.lat(),\r\n lng: place.geometry.location.lng()\r\n }\r\n };\r\n\r\n finalResults.push(data);\r\n }\r\n }\r\n\r\n resolve(finalResults);\r\n });\r\n });\r\n }\r\n\r\n executeFilter(item) {\r\n if (!this.filter || !this.filter.data) {\r\n return true;\r\n }\r\n\r\n if (this.filter.exactly) {\r\n if (\r\n item.meta && this.filter.data.toString().toUpperCase() === item.meta[this.filter.field].toString().toUpperCase()\r\n ) {\r\n return true;\r\n }\r\n } else {\r\n let input = this.filter.data\r\n .toString()\r\n .replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, \"\\\\$&\"); // scape regex\r\n let regexPattern = new RegExp(input, \"i\");\r\n if (\r\n item.meta && item.meta[this.filter.field] && item.meta[this.filter.field].toString().search(regexPattern) > -1\r\n ) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n filterBy(data, field, exactly = false) {\r\n this.filter = { data: data, field: field, exactly: exactly };\r\n\r\n let tmpRemovedItens = _.remove(this.visibleMarkers, item => {\r\n return !this.executeFilter(item);\r\n });\r\n\r\n this.markers.slice().map(item => {\r\n if (this.executeFilter(item)) {\r\n this.addMarkerVisible(item);\r\n }\r\n });\r\n\r\n tmpRemovedItens.map(item => {\r\n this.removeMarkerVisible(item);\r\n });\r\n }\r\n\r\n async createMap(elementRef: ElementRef, initialPosition = null) {\r\n return new Promise((resolve, reject) => {\r\n let element = elementRef.nativeElement;\r\n this.latlng = initialPosition ? initialPosition : this.currentPosition;\r\n let onMapScriptLoaded = () => {\r\n\r\n let mapOptions = {\r\n center: this.latlng,\r\n zoom: 18,\r\n minZoom: 16,\r\n maxZoom:20,\r\n mapTypeId: google.maps.MapTypeId.ROADMAP,\r\n styles: [\r\n {\r\n featureType: \"poi\",\r\n elementType: \"labels\",\r\n stylers: [{ visibility: \"off\" }]\r\n }\r\n ],\r\n disableDefaultUI: true,\r\n gestureHandling: \"greedy\" //disable two finger scroll\r\n };\r\n\r\n this.map = new google.maps.Map(element, mapOptions);\r\n this.placeServices = new google.maps.places.PlacesService(this.map);\r\n\r\n this.map.addListener(\"click\", event => {\r\n this.mapClicked.emit(event);\r\n });\r\n\r\n resolve();\r\n };\r\n\r\n //load or wait for google maps script\r\n if (window['google'] && window['google']['maps']) {\r\n onMapScriptLoaded();\r\n }\r\n else {\r\n window.addEventListener('load', onMapScriptLoaded);\r\n }\r\n\r\n /*\r\n google.maps.event.addListener(this.map, \"zoom_changed\", () => {\r\n var pixelSizeAtZoom0 = 12; //the size of the icon at zoom level 0\r\n var maxPixelSize = 54; //restricts the maximum size of the icon, otherwise the browser will choke at higher zoom levels trying to scale an image to millions of pixels\r\n var zoom = this.map.getZoom();\r\n var relativePixelSize = Math.round(pixelSizeAtZoom0 * Math.pow(2, zoom)); // use 2 to the power of current zoom to calculate relative pixel size. Base of exponent is 2 because relative size should double every time you zoom in\r\n if (relativePixelSize > maxPixelSize)\r\n //restrict the maximum size of the icon\r\n relativePixelSize = maxPixelSize;\r\n //change the size of the icon\r\n this.visibleMarkers.forEach(element => {\r\n if (element.marker.getIcon().url) {\r\n element.marker.setIcon(\r\n new google.maps.MarkerImage(\r\n element.marker.getIcon().url, //marker's same icon graphic\r\n null, //size\r\n null, //origin\r\n null, //anchor\r\n new google.maps.Size(relativePixelSize, relativePixelSize) //changes the scale\r\n )\r\n );\r\n }\r\n });\r\n });\r\n */\r\n });\r\n }\r\n\r\n async centerCurrentPosition() {\r\n this.map.setCenter(this.currentPosition);\r\n }\r\n\r\n createCrosshairMarker() {\r\n if (this.latlng) {\r\n let reticleMarker = new google.maps.Marker({\r\n position: this.map.getCenter(),\r\n icon: new google.maps.MarkerImage(\r\n 'assets/imgs/marker-crosshair.svg',\r\n new google.maps.Size(32, 57),\r\n new google.maps.Point(0, 0),\r\n new google.maps.Point(16, 50)\r\n ),\r\n shape: {\r\n coords: [32, 32, 32, 32],\r\n type: 'rect'\r\n },\r\n optimized: false,\r\n zIndex: 10\r\n });\r\n\r\n //keep centered\r\n google.maps.event.addListener(this.map, 'bounds_changed', () => {\r\n reticleMarker.setPosition(this.map.getCenter());\r\n });\r\n\r\n //register as visible marker\r\n this.addMarkerVisible({ meta: null, marker: reticleMarker });\r\n\r\n return reticleMarker;\r\n }\r\n else {\r\n //console.log(\"latlng is null\");\r\n }\r\n }\r\n\r\n cleanUp() {\r\n this.visibleMarkers.forEach(item => {\r\n item.marker.setMap(null);\r\n });\r\n this.markers = [];\r\n this.visibleMarkers = [];\r\n this.filter = null;\r\n }\r\n\r\n addMarkerVisible(item) {\r\n item.marker.setMap(this.map);\r\n _.pull(this.markers, item);\r\n this.visibleMarkers.push(item);\r\n }\r\n\r\n removeMarkerVisible(item) {\r\n item.marker.setMap(null);\r\n _.pull(this.visibleMarkers, item);\r\n this.markers.push(item);\r\n }\r\n\r\n createMarker(data) {\r\n let icon = null;\r\n \r\n if (data.origin === \"google\" || (data.editable == 1 && !data.color)) {\r\n icon = \"assets/imgs/marker-oval-grey.svg\";\r\n }\r\n else {\r\n //validate color HEX ex: #fff, #FFFFFF\r\n var colorRegex = new RegExp(\"^#(([0-9a-fA-F]{2}){3}|([0-9a-fA-F]){3})$\");\r\n if(data.color && colorRegex.exec(data.color).length > 0){\r\n var svg = '';\r\n icon = { \r\n url: 'data:image/svg+xml;charset=UTF-8,' + encodeURIComponent(svg),\r\n scaledSize: new google.maps.Size(30, 54)\r\n };\r\n }\r\n else{\r\n icon = 'assets/imgs/marker-oval-red.svg';\r\n }\r\n }\r\n\r\n let marker = new google.maps.Marker({\r\n // label: data.name,\r\n position: new google.maps.LatLng(data.location.lat, data.location.lng),\r\n icon: icon\r\n });\r\n\r\n marker.addListener(\"click\", () => {\r\n this.markerSelected.emit(data);\r\n });\r\n\r\n let dataMarker = { meta: data, marker: marker };\r\n\r\n this.markers.push(dataMarker);\r\n\r\n if (this.executeFilter(dataMarker)) {\r\n this.addMarkerVisible(dataMarker);\r\n }\r\n\r\n return dataMarker;\r\n }\r\n\r\n async centerMarker(markerId) {\r\n let tmpSpots = this.visibleMarkers.concat(this.markers);\r\n tmpSpots.forEach(element => {\r\n if (element.meta && element.meta.id === markerId) {\r\n this.map.panTo(\r\n new google.maps.LatLng(\r\n element.meta.location.lat,\r\n element.meta.location.lng\r\n )\r\n );\r\n }\r\n });\r\n }\r\n\r\n deleteMarker(marker) {\r\n this.markers = _.filter(this.markers, n => {\r\n if (n.meta && n.meta.id === marker.id) {\r\n n.marker.setMap(null);\r\n return false;\r\n }\r\n return true;\r\n });\r\n this.visibleMarkers = _.filter(this.visibleMarkers, n => {\r\n if (n.meta && n.meta.id === marker.id) {\r\n n.marker.setMap(null);\r\n return false;\r\n }\r\n return true;\r\n });\r\n }\r\n\r\n static latLng2Point(latLng, map) {\r\n var topRight = map\r\n .getProjection()\r\n .fromLatLngToPoint(map.getBounds().getNorthEast());\r\n var bottomLeft = map\r\n .getProjection()\r\n .fromLatLngToPoint(map.getBounds().getSouthWest());\r\n var scale = Math.pow(2, map.getZoom());\r\n var worldPoint = map.getProjection().fromLatLngToPoint(latLng);\r\n return new google.maps.Point(\r\n (worldPoint.x - bottomLeft.x) * scale,\r\n (worldPoint.y - topRight.y) * scale\r\n );\r\n }\r\n\r\n static point2LatLng(point, map) {\r\n var topRight = map\r\n .getProjection()\r\n .fromLatLngToPoint(map.getBounds().getNorthEast());\r\n var bottomLeft = map\r\n .getProjection()\r\n .fromLatLngToPoint(map.getBounds().getSouthWest());\r\n var scale = Math.pow(2, map.getZoom());\r\n var worldPoint = new google.maps.Point(\r\n point.x / scale + bottomLeft.x,\r\n point.y / scale + topRight.y\r\n );\r\n return map.getProjection().fromPointToLatLng(worldPoint);\r\n }\r\n}\r\n","import { Injectable, Output, EventEmitter } from \"@angular/core\";\r\n\r\n/*\r\n Generated class for the ImageProcessorProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class ImageProcessorProvider {\r\n @Output() resultEvent = new EventEmitter();\r\n worker: Worker = null;\r\n currentPending = 0;\r\n\r\n constructor() {\r\n this.create();\r\n }\r\n\r\n processImage(image, width, height) {\r\n this.worker.postMessage({\r\n image: image,\r\n width: width,\r\n height: height\r\n });\r\n return this.currentPending++;\r\n }\r\n\r\n abort() {\r\n this.worker.terminate();\r\n this.create();\r\n }\r\n\r\n private create() {\r\n let rootUrl = document.URL.split('#')[0];\r\n this.worker = new Worker(rootUrl + \"assets/js/image-worker.js\");\r\n\r\n this.worker.onmessage = message => {\r\n this.currentPending--;\r\n this.resultEvent.emit({\r\n status: 1,\r\n data: message.data\r\n });\r\n };\r\n\r\n this.worker.onerror = event => {\r\n this.currentPending--;\r\n this.resultEvent.emit({\r\n status: 0\r\n });\r\n };\r\n }\r\n}\r\n","import { Injectable, Output, EventEmitter } from \"@angular/core\";\r\n\r\n/*\r\n Generated class for the ImageResizeProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class ImageResizeProvider {\r\n\tconstructor() { }\r\n\r\n\tasync resizeImage(\r\n\t\tfile: File,\r\n\t\tmaxWidth: number,\r\n\t\tmaxHeight: number\r\n\t): Promise {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tlet image = new Image();\r\n\t\t\timage.src = URL.createObjectURL(file);\r\n\t\t\timage.onload = () => {\r\n\t\t\t\tlet width = image.width;\r\n\t\t\t\tlet height = image.height;\r\n\r\n\t\t\t\tlet newWidth;\r\n\t\t\t\tlet newHeight;\r\n\r\n\t\t\t\tif (width > height) {\r\n\t\t\t\t\tnewHeight = height * (maxWidth / width);\r\n\t\t\t\t\tnewWidth = maxWidth;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnewWidth = width * (maxHeight / height);\r\n\t\t\t\t\tnewHeight = maxHeight;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlet canvas = document.createElement(\"canvas\");\r\n\t\t\t\tcanvas.width = newWidth;\r\n\t\t\t\tcanvas.height = newHeight;\r\n\r\n\t\t\t\tlet context = canvas.getContext(\"2d\");\r\n\r\n\t\t\t\tcontext.drawImage(image, 0, 0, newWidth, newHeight);\r\n\t\t\t\tresolve(canvas.toDataURL());\r\n\t\t\t};\r\n\t\t\timage.onerror = reject;\r\n\t\t});\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n/*\r\n Generated class for the LocalstorageProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class LocalstorageProvider {\r\n constructor() {}\r\n\r\n info() {\r\n var _lsTotal = 0,\r\n _xLen,\r\n _x;\r\n for (_x in localStorage) {\r\n _xLen = (localStorage[_x].length + _x.length) * 2;\r\n _lsTotal += _xLen;\r\n console.log(_x.substr(0, 50) + \" = \" + (_xLen / 1024).toFixed(2) + \" KB\");\r\n }\r\n //console.log(\"Total = \" + (_lsTotal / 1024).toFixed(2) + \" KB\");\r\n }\r\n\r\n getKeys() {\r\n let result = [];\r\n if (this.getStoredQuantity() > 0) {\r\n for (var i = 0; i < localStorage.length; i++) {\r\n result.push(localStorage.key(i));\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n getPosKeys() {\r\n let filter = /^spot\\-/i;\r\n let result = [];\r\n if (this.getStoredQuantity() > 0) {\r\n for (var i = 0; i < localStorage.length; i++) {\r\n if (filter.exec(localStorage.key(i))) {\r\n result.push(localStorage.key(i));\r\n }\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n getCountPosKey() {\r\n return this.getPosKeys().length;\r\n }\r\n\r\n getStoredQuantity() {\r\n return localStorage.length;\r\n }\r\n\r\n remove(key) {\r\n localStorage.removeItem(key);\r\n }\r\n\r\n read(key) {\r\n return JSON.parse(localStorage.getItem(key));\r\n }\r\n\r\n write(key, value) {\r\n localStorage.setItem(key, JSON.stringify(value));\r\n }\r\n\r\n clear() {\r\n localStorage.clear();\r\n }\r\n}\r\n","import { Subject } from \"rxjs/Subject\";\r\nimport { RemoteServicesProvider } from \"./../remote-services/remote-services\";\r\nimport { LocalstorageProvider } from \"./../localstorage/localstorage\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\n\r\n/*\r\n Generated class for the LoginProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class LoginProvider {\r\n expiration = null;\r\n userId = null;\r\n userName = null;\r\n userFirstName = null;\r\n userFullName = null;\r\n userAvatar = null;\r\n isIAMUser = null;\r\n token = null;\r\n groups = null;\r\n posType = null;\r\n webTrekk = null;\r\n\r\n config = { enablePosCode: false };\r\n configLoaded: boolean = false;\r\n loginEvent = new Subject();\r\n\r\n constructor(\r\n public services: RemoteServicesProvider,\r\n public storage: LocalstorageProvider,\r\n public cookieService: CookieService,\r\n ) {\r\n this.restoreStorage();\r\n }\r\n\r\n async doLogin(user: string, password: string) {\r\n let data: any = await this.services.doLogin(user, password);\r\n if (data) {\r\n this.loginEvent.next();\r\n\r\n this.expiration = data.expires;\r\n this.userId = data.userId;\r\n this.userName = data.userName;\r\n this.userFirstName = data.userFirstName;\r\n this.userFullName = data.userFullName;\r\n this.isIAMUser = data.isIAMUser;\r\n this.token = data.access_token;\r\n this.groups = data.groups;\r\n this.posType = data.posType;\r\n this.config = data.config;\r\n this.webTrekk = data.webTrekk;\r\n\r\n //do not change order\r\n if (data.userAvatar)\r\n this.userAvatar = data.userAvatar;\r\n else\r\n this.loadUserAvatar();\r\n\r\n if (this.webTrekk) {\r\n this.cookieService.set(\"WebTrekk_Cookie\", this.webTrekk, 30);\r\n }\r\n else{\r\n this.cookieService.delete(\"WebTrekk_Cookie\");\r\n }\r\n\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n async doLoginSaml(token: string) {\r\n let data: any = await this.services.doLoginToken(token);\r\n if (data) {\r\n this.loginEvent.next();\r\n\r\n this.expiration = data.expires;\r\n this.userId = data.userId;\r\n this.userName = data.userName;\r\n this.userFirstName = data.userFirstName;\r\n this.userFullName = data.userFullName;\r\n this.isIAMUser = data.isIAMUser;\r\n this.token = data.access_token;\r\n this.groups = data.groups;\r\n this.posType = data.posType;\r\n this.config = data.config;\r\n this.webTrekk = data.webTrekk;\r\n\r\n //do not change order\r\n if (data.userAvatar)\r\n this.userAvatar = data.userAvatar;\r\n else\r\n this.loadUserAvatar();\r\n\r\n if (this.webTrekk) {\r\n this.cookieService.set(\"WebTrekk_Cookie\", this.webTrekk, 30);\r\n }\r\n else{\r\n this.cookieService.delete(\"WebTrekk_Cookie\");\r\n }\r\n\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n async loadUserAvatar() {\r\n var image: any = await this.services.getProfileImage(this.userName, this.token);\r\n if (image) {\r\n this.userAvatar = image;\r\n }\r\n else {\r\n this.userAvatar = \"assets/imgs/rb_user_placeholder.jpg\";;\r\n }\r\n this.saveStorage();\r\n }\r\n\r\n isLogged() {\r\n if (this.token && this.expiration >= Math.floor(+new Date() / 1000)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n isConfigLoaded() {\r\n return this.configLoaded;//return sessionStorage.getItem(\"configLoaded\") == \"1\";\r\n }\r\n\r\n setConfigLoaded(loaded: boolean = true) {\r\n return this.configLoaded = loaded;//sessionStorage.setItem(\"configLoaded\", loaded ? \"1\" : \"0\");\r\n }\r\n\r\n logout() {\r\n this.token = null;\r\n this.userId = null;\r\n this.userName = null;\r\n this.userFirstName = null;\r\n this.userFullName = null;\r\n this.userAvatar = null;\r\n this.isIAMUser = null;\r\n this.expiration = null;\r\n this.groups = null;\r\n this.posType = null;\r\n this.webTrekk = null;\r\n this.config = { enablePosCode: false };\r\n this.storage.clear();\r\n }\r\n\r\n public saveStorage() {\r\n this.storage.write(\r\n \"loginData\",\r\n {\r\n expiration: this.expiration,\r\n userId: this.userId,\r\n userName: this.userName,\r\n userFirstName: this.userFirstName,\r\n userFullName: this.userFullName,\r\n userAvatar: this.userAvatar,\r\n isIAMUser: this.isIAMUser,\r\n token: this.token,\r\n groups: this.groups,\r\n posType: this.posType,\r\n webTrekk: this.webTrekk,\r\n config: this.config\r\n }\r\n );\r\n }\r\n\r\n private restoreStorage() {\r\n try {\r\n let data = this.storage.read(\"loginData\");\r\n if (data) {\r\n this.expiration = data.expiration;\r\n this.userId = data.userId;\r\n this.userName = data.userName;\r\n this.userFirstName = data.userFirstName;\r\n this.userFullName = data.userFullName;\r\n this.userAvatar = data.userAvatar;\r\n this.isIAMUser = data.isIAMUser;\r\n this.token = data.token;\r\n this.groups = data.groups;\r\n this.posType = data.posType;\r\n this.webTrekk = data.webTrekk;\r\n this.config = data.config;\r\n }\r\n }\r\n catch (e) {\r\n console.warn(\"Login data is corrupted.\");\r\n console.error(e);\r\n }\r\n }\r\n}\r\n","import { AppcacheManagerProvider } from \"./../appcache-manager/appcache-manager\";\r\nimport { HttpClient, HttpHeaders, HttpErrorResponse } from \"@angular/common/http\";\r\nimport { Injectable, EventEmitter } from \"@angular/core\";\r\nimport { GetServiceUrl } from \"../../psapp-config\";\r\nimport \"rxjs/add/operator/timeout\";\r\nimport { Router } from \"@angular/router\";\r\nimport { LoginProvider } from \"providers/login/login\";\r\nimport { BehaviorSubject } from \"rxjs\";\r\n\r\n/*\r\n Generated class for the RemoteServicesProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class RemoteServicesProvider {\r\n timeoutMilliseconds = 60000; // Milliseconds\r\n radiusDistance = 10; // Kilometers\r\n httpErrors = new EventEmitter();\r\n \r\n constructor(\r\n public appcacheManagerProvider: AppcacheManagerProvider,\r\n public http: HttpClient,\r\n ) { }\r\n\r\n doLogin(user: string, password: string) {\r\n return new Promise((resolve, reject) => {\r\n let data = {\r\n UserName: user,\r\n Password: password\r\n };\r\n this.http\r\n .post(GetServiceUrl(\"Login\"), JSON.stringify(data), {\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\"\r\n })\r\n })\r\n .timeout(this.timeoutMilliseconds)\r\n .subscribe(\r\n res => {\r\n resolve(res);\r\n },\r\n err => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.httpErrors.next(err);\r\n }\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n \r\n doLoginToken(token: string) {\r\n return new Promise((resolve, reject) => {\r\n let data = {\r\n Token: token\r\n };\r\n this.http\r\n .post(GetServiceUrl(\"LoginToken\"), JSON.stringify(data), {\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\"\r\n })\r\n })\r\n .timeout(this.timeoutMilliseconds)\r\n .subscribe(\r\n res => {\r\n resolve(res);\r\n },\r\n err => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.httpErrors.next(err);\r\n }\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n getRanking(groupId, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetUserRank\"),\r\n { idGroup: groupId },\r\n token\r\n );\r\n }\r\n\r\n getUserRankings(token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetUserRankings\"),\r\n null,\r\n token\r\n );\r\n }\r\n\r\n getRankingPositions(groupId, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetRankingPositions\"),\r\n { groupId: groupId },\r\n token\r\n );\r\n }\r\n\r\n getTips(groupId, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetTips\"),\r\n { groupId: groupId },\r\n token\r\n );\r\n }\r\n\r\n getConfig(location, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetConfig\"),\r\n { latitude: location.lat, longitude: location.lng },\r\n token\r\n );\r\n }\r\n\r\n getPOSType(token) {\r\n return this.doRequestGet(GetServiceUrl(\"GetPOSType\"), null, token);\r\n }\r\n\r\n getSurvey(groupId, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetSurvey\"),\r\n { groupId: groupId },\r\n token\r\n );\r\n }\r\n\r\n getProducts(groupId, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"GetProducts\"),\r\n { groupId: groupId },\r\n token\r\n );\r\n }\r\n\r\n sendPos(data, token) {\r\n return this.doRequestPost(\r\n GetServiceUrl(\"PostPOS\"),\r\n {\r\n Id: +data.id,\r\n Name: data.name,\r\n Address: data.address,\r\n Latitude: data.marker.location.lat,\r\n Longitude: data.marker.location.lng,\r\n POSTypeId: data.posTypeId,\r\n POSCode: data.posCode,\r\n StateId: -1,\r\n },\r\n token\r\n );\r\n }\r\n\r\n sendSpot(data, token) {\r\n return this.doRequestPost(\r\n GetServiceUrl(\"PostSpot\"),\r\n {\r\n POSId: data.POSId,\r\n photos: data.photos,\r\n SpotProducts: data.SpotProducts,\r\n Answers: data.Answers,\r\n groupId: data.groupId\r\n },\r\n token\r\n );\r\n }\r\n\r\n updateProfile(data, token) {\r\n return this.doRequestPost(\r\n GetServiceUrl(\"EditUser\"),\r\n {\r\n image: data.photo\r\n },\r\n token\r\n );\r\n }\r\n\r\n getProfileImage(login, token) {\r\n return this.doRequestGet(\r\n GetServiceUrl(\"ProfileImage\"),\r\n {\r\n login:login\r\n },\r\n token,\r\n \"text\"\r\n );\r\n }\r\n\r\n sendLoginRequest(data) {\r\n return this.doRequestPost(\r\n GetServiceUrl(\"PostLoginRequest\"),\r\n data,\r\n null\r\n );\r\n }\r\n \r\n sendForgotPasswordRequest(data) {\r\n return this.doRequestPost(\r\n GetServiceUrl(\"PostForgotPasswordRequest\"),\r\n data,\r\n null\r\n );\r\n }\r\n\r\n async getPosNearby(lat, lng, radius, groupId, token) {\r\n if(!lat || !lng){\r\n return [];\r\n }\r\n var group = Number(groupId);\r\n let data: any = await this.doRequestGet(\r\n GetServiceUrl(\"GetPosList\"),\r\n { latitude: lat, longitude: lng, radius: radius, groupId: group ? group : 0 },\r\n token\r\n );\r\n\r\n if (data) {\r\n data.forEach(element => {\r\n element.location = {\r\n lat: element.latitude,\r\n lng: element.longitude\r\n };\r\n });\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private async doRequestPost(url, data, token) {\r\n return new Promise((resolve, reject) => {\r\n\r\n let headers = token ? new HttpHeaders({\r\n \"Authorization\": \"Bearer \" + token,\r\n \"Content-type\": \"application/json\"\r\n }) : new HttpHeaders({\r\n \"Content-type\": \"application/json\"\r\n });\r\n\r\n this.http\r\n .post(url, JSON.stringify(data), {\r\n headers: headers\r\n })\r\n .timeout(this.timeoutMilliseconds)\r\n .subscribe(\r\n res => {\r\n if (this.appcacheManagerProvider.isAppCacheValid(url)) {\r\n this.appcacheManagerProvider.saveCache(url, res);\r\n }\r\n resolve(res);\r\n },\r\n err => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.httpErrors.next(err);\r\n }\r\n else{\r\n if (this.appcacheManagerProvider.isAppCacheValid(url)) {\r\n resolve(this.appcacheManagerProvider.restoreCache(url));\r\n }\r\n }\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n private async doRequestGet(url, data, token, responseType = \"json\") {\r\n let parsedUrl = data ? url + \"?\" + this.convertJSONtoUrlEncoded(data) : url;\r\n return new Promise((resolve, reject) => {\r\n let headers = token\r\n ? new HttpHeaders({\r\n Authorization: \"Bearer \" + token\r\n })\r\n : null;\r\n\r\n var options;\r\n if(responseType == \"text\"){\r\n options = {\r\n headers: headers,\r\n responseType: \"text\"\r\n }\r\n }\r\n else{\r\n options = {\r\n headers: headers\r\n }\r\n }\r\n\r\n this.http\r\n .get(parsedUrl, options)\r\n .timeout(this.timeoutMilliseconds)\r\n .subscribe(\r\n res => {\r\n if (this.appcacheManagerProvider.isAppCacheValid(parsedUrl)) {\r\n this.appcacheManagerProvider.saveCache(parsedUrl, res);\r\n }\r\n resolve(res);\r\n },\r\n err => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.httpErrors.next(err);\r\n }\r\n else{\r\n if (this.appcacheManagerProvider.isAppCacheValid(parsedUrl)) {\r\n resolve(this.appcacheManagerProvider.restoreCache(parsedUrl));\r\n }\r\n }\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n private convertJSONtoUrlEncoded(json) {\r\n var str = [];\r\n for (var key in json) {\r\n if (json.hasOwnProperty(key)) {\r\n str.push(encodeURIComponent(key) + \"=\" + encodeURIComponent(json[key]));\r\n }\r\n }\r\n return str.join(\"&\");\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n/*\r\n Generated class for the TranslationProvider provider.\r\n\r\n See https://angular.io/guide/dependency-injection for more info on providers\r\n and Angular DI.\r\n*/\r\n@Injectable()\r\nexport class TranslationProvider {\r\n\tbrowserLanguage: string = \"\";\r\n\tconstructor(public http: HttpClient) {\r\n\t\tthis.browserLanguage = navigator.language.toLowerCase();\r\n\t}\r\n\r\n\tgetLanguageName() {\r\n\t\tif (this.browserLanguage.startsWith(\"pt\")) {\r\n\t\t\treturn \"PT\";\r\n\t\t}\r\n\t\telse if (this.browserLanguage.startsWith(\"es\")) {\r\n\t\t\treturn \"ES\";\r\n\t\t}\r\n\t\telse {\r\n\t\t\treturn \"\";\r\n\t\t}\r\n\t}\r\n\r\n\tgetDefaultLang() {\r\n\t\treturn \"en\";\r\n\t}\r\n\r\n\tgetCurrentLang() {\r\n\t\tif (this.browserLanguage.startsWith(\"pt\")) {\r\n\t\t\treturn \"pt-br\";\r\n\t\t}\r\n\t\telse if (this.browserLanguage.startsWith(\"es\")) {\r\n\t\t\treturn \"es\";\r\n\t\t}\r\n\t\telse {\r\n\t\t\treturn \"en\"\r\n\t\t}\r\n\t}\r\n}\r\n","import { environment } from 'environments/environment';\r\n\r\n//declare const webApiUrl: string;\r\n//declare const googleApiKey: string;\r\n\r\nlet configApp = {\r\n baseURL: environment.webApiUrl,\r\n subDomain: \"\",\r\n googleApiKey: environment.googleApiKey,\r\n webTrekkPagePrefix: environment.webTrekkPagePrefix,\r\n endPoints: {\r\n ImageProduct: \"/api/v3/Product/GetImage\",\r\n Login: \"/api/v3/Account/Login\",\r\n LoginToken: \"/api/v3/Account/LoginToken\",\r\n GetConfig: \"/api/v3/User/GetConfig\",\r\n GetUserRank: \"/api/v3/User/Ranking\",\r\n GetUserRankings: \"/api/v3/User/GetRankings\",\r\n GetRankingPositions: \"/api/v3/User/GetRankingPositions\",\r\n GetTips: \"/api/v3/Tip/Get\",\r\n GetPosList: \"/api/v3/POS/Get\",\r\n GetPOSType: \"/api/v3/POSType/Get\",\r\n GetPOSTypeImage: \"/api/v3/POSType/GetImage\",\r\n GetSurvey: \"/api/v3/Question/GetQuestionsByGroup\",\r\n GetProducts: \"/api/v3/Product/Get\",\r\n PostPOS: \"/api/v3/POS/Post\",\r\n PostSpot: \"/api/v3/Spot/Post\",\r\n ImagePost: \"/api/v3/Spot/PostImages\",\r\n ImageCampaign: \"/api/v3/Group/GetImage\",\r\n ImageCampaignBanner: \"/api/v3/Group/GetBannerImage\",\r\n EditUser: \"/api/v3/User/Edit\",\r\n ProfileImage: \"/api/v3/User/GetProfileImage\",\r\n PostLoginRequest: \"/api/v3/UserLoginRequest/Post\",\r\n PostForgotPasswordRequest: \"/api/v3/User/PasswordRecovery\",\r\n }\r\n};\r\n\r\n// Don't edit bellow here\r\nexport function GetServiceUrl(name) {\r\n return configApp.baseURL + configApp.subDomain + configApp.endPoints[name];\r\n}\r\n\r\nexport function GetUrl(path) {\r\n return configApp.baseURL + configApp.subDomain + path;\r\n}\r\n\r\nexport default configApp;\r\n","import { LoginProvider } from \"./../providers/login/login\";\r\nimport { RemoteServicesProvider } from \"./../providers/remote-services/remote-services\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BehaviorSubject } from \"rxjs\";\r\nimport { GeolocalizationProvider } from \"../providers/geolocalization/geolocalization\";\r\nimport { LocalstorageProvider } from \"./../providers/localstorage/localstorage\";\r\nimport { GmapsProvider } from \"./../providers/gmaps/gmaps\";\r\nimport * as _ from \"lodash\";\r\nimport { SpotData } from \"dto\";\r\n\r\n@Injectable()\r\nexport class RootStore {\r\n\tselectedGroupId: BehaviorSubject;\r\n currentPosition: BehaviorSubject;\r\n selectedPOS: BehaviorSubject;\r\n spotData: BehaviorSubject;\r\n\tuserGroups: any[] = [];\r\n\tposList: any[] = [];\r\n\tposTypeList: any[] = [];\r\n\tproducts: any[] = [];\r\n\tsurvey: any[] = [];\r\n\ttips: any[] = [];\r\n rankings:any[] = [];\r\n\tconfig = { enablePosCode: false };\r\n\r\n\tconstructor(\r\n\t\tpublic loginProvider: LoginProvider,\r\n\t\tpublic remoteService: RemoteServicesProvider,\r\n\t\tprivate geolocalizationProvider: GeolocalizationProvider,\r\n\t\tprivate gmaps: GmapsProvider,\r\n\t\tpublic storage: LocalstorageProvider\r\n\t) {\r\n this.selectedGroupId = new BehaviorSubject(null);\r\n this.selectedPOS = new BehaviorSubject(null);\r\n this.spotData = new BehaviorSubject(null);\r\n \r\n\t\tthis.setup();\r\n\t}\r\n\r\n\tstartupLoadData() {\r\n\t\tthis.loadListData(this.loginProvider.posType, this.posTypeList);\r\n\t\tthis.configGroup(this.loginProvider.config, null, this.loginProvider.groups);\r\n\t\treturn this.userGroups;\r\n\t}\r\n \r\n async getUserRanking() {\r\n\t\tlet ranking = (await this.remoteService.getUserRankings(\r\n\t\t\tthis.loginProvider.token\r\n\t\t)) as any[];\r\n\t\tthis.loadListData(ranking, this.rankings);\r\n }\r\n\r\n async getRankingPositions(groupId) {\r\n\t\treturn await this.remoteService.getRankingPositions(\r\n groupId,\r\n\t\t\tthis.loginProvider.token\r\n );\r\n }\r\n \r\n\tasync getPOSList(position = null) {\r\n let currentPosition = position ? position : this.geolocalizationProvider.currentPosition.getValue();\r\n\t\tvar selectedGroup = this.getSelectedGroup();\r\n\t\tvar radius = this.gmaps.getRadiusFromZoom();\r\n\r\n\t\tlet data: any = await this.remoteService.getPosNearby(\r\n\t\t\tcurrentPosition.lat,\r\n currentPosition.lng,\r\n\t\t\tradius,\r\n selectedGroup ? selectedGroup.id : 0,\r\n\t\t\tthis.loginProvider.token\r\n\t\t);\r\n\t\tthis.loadListData(data, this.posList);\r\n\t}\r\n\r\n\tfindPos(id) {\r\n\t\tlet index = _.findIndex(this.posList, function (o) {\r\n\t\t\treturn o.id === id;\r\n\t\t});\r\n\t\treturn this.posList[index];\r\n\t}\r\n\r\n public async loadGroupData(groupId) {\r\n if (groupId) {\r\n // Tips\r\n let tips = (await this.remoteService.getTips(\r\n groupId,\r\n this.loginProvider.token\r\n )) as any[];\r\n this.loadListData(tips, this.tips);\r\n \r\n // Products\r\n let products = (await this.remoteService.getProducts(\r\n groupId,\r\n this.loginProvider.token\r\n )) as any[];\r\n this.loadListData(products, this.products);\r\n \r\n // Survey\r\n let survey = (await this.remoteService.getSurvey(\r\n groupId,\r\n this.loginProvider.token\r\n )) as any[];\r\n this.loadListData(survey, this.survey);\r\n\r\n //Refresh POS list\r\n await this.getPOSList();\r\n\r\n //Default selected POS\r\n if (this.posList.length > 0) {\r\n this.selectedPOS.next(this.posList[0]);\r\n }\r\n }\r\n }\r\n\r\n\tprivate setup() {\r\n\t\t\r\n\t\tthis.selectedGroupId.subscribe(groupId => this.loadGroupData(groupId));\r\n\r\n\t\t// Current location\r\n\t\tthis.geolocalizationProvider.currentPosition.subscribe(async location => {\r\n\t\t\tif (location && this.loginProvider.isLogged()) {\r\n\t\t\t\tthis.getPOSList();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Login trigger\r\n\t\tthis.loginProvider.loginEvent.subscribe(async data => {\r\n\t\t\tthis.getPOSList();\r\n\t\t});\r\n\t}\r\n\r\n\tasync loadConfig(autoSelectGroup = true) {\r\n\r\n\t\tlet data: any = (await this.remoteService.getConfig(\r\n\t\t\tthis.geolocalizationProvider.currentPosition.value,\r\n\t\t\tthis.loginProvider.token\r\n\t\t)) as any[];\r\n\r\n\t\tif (data && data.posType) {\r\n\t\t\tthis.loadListData(data.posType, this.posTypeList);\r\n\t\t}\r\n\r\n\t\tif (data && data.groups) {\r\n\t\t\tthis.configGroup(data.config, data.areaGroupId, data.groups, autoSelectGroup);\r\n\t\t}\r\n\r\n\t\treturn this.userGroups;\r\n\t}\r\n\r\n\tprivate configGroup(config, areaGroupId, groups, autoSelectGroup = true) {\r\n\r\n\t\t// Load group\r\n\t\tthis.loadListData(groups, this.userGroups);\r\n\r\n\t\t// Load config\r\n\t\tthis.config = config;\r\n\r\n if(autoSelectGroup){\r\n let storageData = JSON.parse(this.storage.read(\"selectedGroup\"));\r\n\r\n // Select group\r\n if (areaGroupId) {\r\n this.selectedGroupId.next(areaGroupId);\r\n }\r\n else if (storageData !== null && storageData.group && storageData.group.id > 0\r\n && groups.length > 0 && groups.findIndex(x => x.id == storageData.group.id)) {\r\n this.selectedGroupId.next(storageData.group.id);\r\n }\r\n else if (groups.length > 0) {\r\n this.selectedGroupId.next(groups[0].id);\r\n }\r\n }\r\n\t}\r\n\r\n\tgetSelectedGroup() {\r\n\t\tif (this.selectedGroupId.value) {\r\n\t\t\tlet result = _.filter(this.userGroups, data => data.id === this.selectedGroupId.value);\r\n\t\t\treturn _.first(result);\r\n\t\t}\r\n\t\treturn null;\r\n }\r\n \r\n getDefaultGroupBanner() {\r\n var selectedGroup = this.getSelectedGroup();\r\n if(selectedGroup && selectedGroup.bannerActive && selectedGroup.bannerUrlImage){\r\n return selectedGroup;\r\n }\r\n /*else{\r\n let result = _.filter(this.userGroups, data => data.anyUser && data.bannerActive && data.bannerUrlImage);\r\n return _.first(result);\r\n }*/\r\n\t}\r\n\r\n\tprivate loadListData(source: any[], destiny: any[]) {\r\n\t\tdestiny.length = 0;\r\n\t\tif (source) {\r\n\t\t\tsource.forEach(item => {\r\n\t\t\t\tdestiny.push(item);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n}\r\n"],"sourceRoot":""}