{"version":3,"sources":["webpack:///$_lazy_route_resource lazy namespace object","webpack:///src/app/addyourarea/addyourarea.component.ts","webpack:///src/app/addyourarea/addyourarea.component.html","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/aree-news/aree-news.component.ts","webpack:///src/app/aree-news/aree-news.component.html","webpack:///src/app/articlepreview/articlepreview.component.ts","webpack:///src/app/articlepreview/articlepreview.component.html","webpack:///src/app/articles/articles.component.ts","webpack:///src/app/articles/articles.component.html","webpack:///src/app/button-menu-top-center/button-menu-top-center.component.ts","webpack:///src/app/button-menu-top-center/button-menu-top-center.component.html","webpack:///src/app/camperreview/camperreview.component.ts","webpack:///src/app/camperreview/camperreview.component.html","webpack:///src/app/chatcomponent/chatcomponent.component.ts","webpack:///src/app/chatcomponent/chatcomponent.component.html","webpack:///src/app/chatmessage.ts","webpack:///src/app/completearticle/completearticle.component.ts","webpack:///src/app/completearticle/completearticle.component.html","webpack:///src/app/flashing-message/flashing-message.component.ts","webpack:///src/app/flashing-message/flashing-message.component.html","webpack:///src/app/here-map/here-map.component.ts","webpack:///src/app/here-map/here-map.component.html","webpack:///src/app/locationdetails/locationdetails.component.ts","webpack:///src/app/locationdetails/locationdetails.component.html","webpack:///src/app/mapdialog/mapdialog.component.ts","webpack:///src/app/mapdialog/mapdialog.component.html","webpack:///src/app/menu/menu.component.ts","webpack:///src/app/menu/menu.component.html","webpack:///src/app/page-not-found/page-not-found.component.ts","webpack:///src/app/page-not-found/page-not-found.component.html","webpack:///src/app/placetovisit/placetovisit.component.ts","webpack:///src/app/placetovisit/placetovisit.component.html","webpack:///src/app/reviewview/reviewview.component.ts","webpack:///src/app/reviewview/reviewview.component.html","webpack:///src/app/rvarea/rvarea.component.ts","webpack:///src/app/rvarea/rvarea.component.html","webpack:///src/app/rvplaner/rvplaner.component.ts","webpack:///src/app/rvplaner/rvplaner.component.html","webpack:///src/app/website/website.component.ts","webpack:///src/app/website/website.component.html","webpack:///src/articles.ts","webpack:///src/bvroboticsapi.service.ts","webpack:///src/chat.service.ts","webpack:///src/data.service.ts","webpack:///src/dati/simulatoremenu.ts","webpack:///src/environments/environment.ts","webpack:///src/itemtoshow.ts","webpack:///src/main.ts","webpack:///ws (ignored)","webpack:///util (ignored)","webpack:///util (ignored)?a9f6"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","module","exports","id","AddyourareaComponent","bvAPI","f","value","provincia","toUpperCase","email","localita","descrizione","http","latitudine","longitudine","Observer","sendMail","subscribe","data","alert","reset","onSubmit","selector","templateUrl","styleUrls","AppComponent","getIPAddress","res","json","JSON","parse","ip","appRoutes","path","component","AppModule","forRoot","declarations","imports","providers","bootstrap","AreeNewsComponent","dialog","now","Date","messages","items","DefaultItem","description","itemtype","lobgitudine","tipo","tipologia","mtipo","push","elementtoDisplay","getArea","parser","strict","trim","that","parseString","err","result","console","log","stack","JTranslation","stringify","length","pop","GetRVData","RVElementAry","Element","forEach","element","areaDaMostrare","località","Atipo","cTipo","mTipo","Math","floor","random","latitude","longitude","dialogConfig","dialogRef","open","ArticlepreviewComponent","document","configCompleted","isShowed","IsNews","ArticlesList","SearchFromChild","titolo","sottotitolo","articolo","articoloBreve","BoxID","manageArticleConfiguration","CodArticolo","codice","getArticleList","article","Desc","cod","loc","prov","uri","location","href","goToUrl","getSpecificArticle","height","news","httptesto","emit","tabName","selectedIndex","Document","ArticlesComponent","ButtonMenuTopCenterComponent","CamperreviewComponent","breakpoint","window","innerWidth","getReviewList","ChatcomponentComponent","DecreaseConstant","localStorage","getItem","groupname","split","join","i","sender","splice","username","msgtodisplay","setInterval","grpName","getMessage","GetMessage","ReturnMessage","MSGElementAry","SenderName","Author","theMessage","Message","locationJString","setItem","removeItem","ClearMessageList","url","encodeURI","replace","indexOf","Chatmessage","txtmsg","datemsg","groupmsg","viewitems","CompletearticleComponent","sanitizer","test","youtube","linkhttp","bypassSecurityTrustResourceUrl","mousePositionControl","ol","control","MousePosition","coordinateFormat","coordinate","createStringXY","projection","className","target","getElementById","undefinedHTML","map","Map","controls","defaults","attributionOptions","collapsible","extend","layers","layer","Tile","source","OSM","view","View","center","proj","fromLonLat","parseFloat","zoom","on","args","lonlat","transform","lon","lat","close","getView","setCenter","setZoom","CloseClick","FlashingMessageComponent","FlashMessage","HereMapComponent","ref","myLat","myLon","routeTo","veichle","navigationTimeout","directions","PlaceHolderPlaced","pathDrown","svgMarkup","platform","H","service","Platform","router","getRoutingService","currentMessage","message","MoveTheMap","msg","substr","lng","addObject","Marker","route","index","navTimeout","navTimer","ShowPosOnMapduringNav","clearInterval","icon","Icon","removeObjects","duringNavMarker","GetCurrPosAction","pos","getObjects","CamperMarker","reject","watchID","navigator","geolocation","watchPosition","resp","coords","timeout","setTimeout","clearWatch","SearchRVLocation","AreaLoc","pngIcon","size","w","h","getNearestAreas","changeMessage","areaIndex","indice","Areaicon","IconWithNumber","AreaMarker","detectChanges","group","html","marker","setData","Group","addEventListener","evt","bubble","ui","InfoBubble","getGeometry","content","getData","addBubble","addMarkerToGroup","getSpecificArea","defaultLayers","createDefaultLayers","targetElement","vector","normal","pixelRatio","devicePixelRatio","behavior","mapevents","Behavior","MapEvents","UI","createDefault","protocol","Endlat","Endlon","StartLat","StartLon","params","transportMode","representation","routeattributes","maneuverattributes","origin","destination","calculateRoute","herejason","azione","from","to","manovra","routes","sections","turnByTurnActions","hasOwnProperty","action","currentRoad","name","nextRoad","section","linestring","geo","LineString","fromFlexiblePolyline","polyline","routeLine","Polyline","style","strokeColor","lineWidth","startMarker","departure","place","endMarker","arrival","addObjects","getViewModel","setLookAtData","bounds","getBoundingBox","error","maneuver","GetCurrPos","GetNearestArea","ShowPosOnMap","StartNavigating","StopNavigating","LocationdetailsComponent","youtubePresent","moveToCenter","MapdialogComponent","addPoint","vectorLayer","Vector","features","Feature","geometry","geom","Point","Style","image","anchor","anchorXUnits","anchorYUnits","src","addLayer","MenuComponent","link_menu_1","link_menu_2","link_menu_3","link_menu_4","link_menu_5","PageNotFoundComponent","PlacetovisitComponent","getLocationList","ReviewviewComponent","RVareaComponent","manageTheMessage","changeDetection","Default","RvplanerComponent","start","finish","title","WebsiteComponent","listamenuleft","listamenucenter","listamenuright","listagroup","initialLocation","initialArticle","initialReview","initialNews","faSignInAlt","faNameChange","faSend","faRemoveCache","faChangePicture","ConnectionDate","leftbuttontitle","centerbuttontitle","rightbuttontitle","selected","GroupSelected","SelectedGroupIcon","idMenu","paramName","paramValue","includes","httpParams","fromString","get","ChatDOMS","tabGroup","userinterfacemessage","searchMessage","searchAreaUsingAI","retMess","AIMatching","position","parseInt","VariableElementAT","oldname","NewUserName","sendMessage","CheckMessage","event","tab","textLabel","id2tab","getParamValueQueryString","navigate","relativeTo","DisplayArticle","DisplayReview","DisplayNews","emptyCache","tabChanged","gotoRoutePlanner","Articles","BvroboticsapiService","httpClient","PROD_SERVR","DEV_SERVR","GET_AREA_API","GET_LOCATION_LIST","GET_REVIEW_LIST","GET_LOCATION_API","GET_NEAREST_AREAS","AI_SEARCH_API","CUR_SERVR","errorMessage","ErrorEvent","status","responseType","pipe","handleError","Subject","myLast","Articleurl","radius","api","providedIn","ChatService","getMessages","create","observer","socket","next","query","secure","handleVisibilityChange","hidden","beating","DataService","messageSource","asObservable","MENUELEMENTS","desc","GROUPELEMENTS","environment","production","Itemtoshow","bootstrapModule"],"mappings":"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","file":"main-es5.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 = \"./$$_lazy_route_resource lazy recursive\";","\nimport { Component, OnInit} from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport * as xml2js from 'xml2js';\n\n\n@Component({\n selector: 'app-addyourarea',\n templateUrl: './addyourarea.component.html',\n styleUrls: ['./addyourarea.component.css']\n})\n\n\n\nexport class AddyourareaComponent implements OnInit {\n localita:string;\n \n \n\n constructor(private bvAPI:BvroboticsapiService) { }\n\n ngOnInit(): void {\n }\n\n onSubmit(f: NgForm){ \n\n //Chanage in Uppercase\n f.value.provincia =f.value.provincia.toUpperCase();\n\n var email = 'this is a test essage to add an area for. Località:' + f.value.localita +\n '\\n\\rProvincia:' + f.value.provincia +\n '\\n\\rDescrizione:' + f.value.descrizione +\n '\\n\\rSito:' + f.value.http +\n '\\n\\rLatitudine:' + f.value.latitudine +\n '\\r\\nLongitudine:' + f.value.longitudine;\n \n var Observer = this.bvAPI.sendMail('vittorio.margherita@buonevacanze.org', 'new area proposed', email).subscribe((data)=>{ /*Do nothing*/ });\n\n //say thanks\n alert('Grazie per aver inviato la richiesta. Verrà presa in considerazione nel più breve tempo possibile');\n\n f.reset();\n \n\n }\n}\n","
\n \n \n \n \n \n \n \n
\n \n Località\n \n \n \n \n \n Provincia\n \n \n
\n \n

\n \n Descrizione\n \n \n \n Sito Web\n \n \n

\n \n \n \n \n \n \n
\n \n Latitudine\n \n \n \n \n \n Longitudine\n \n \n
\n \n

\n \n

\n
\n","\nimport { Component, OnInit } from '@angular/core';\n\nimport { BvroboticsapiService } from './../bvroboticsapi.service';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent implements OnInit {\n\n constructor(private bvAPI:BvroboticsapiService){}\n\n ngOnInit() {\n\n \n this.bvAPI.getIPAddress().subscribe((res:any)=>{\n\n\n var json = JSON.parse( res );\n //Send a log Email\n var email = 'There is a new user connected'+\n '\\n\\IP:' + json.ip;\n //alert(email);\n var Observer = this.bvAPI.sendMail('vittorio.margherita@buonevacanze.org', 'New User connected on Buonevacanze.org', email).subscribe((data)=>{ /*Do nothing*/ });\n\n });\n\n \n\n\n }\n} \n ","\r\n\r\n

\r\n\r\n\r\n\r\n\r\n\r\n","\nimport { DataService } from './../data.service';\n\nimport { BrowserModule } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { AppComponent } from './app.component';\nimport { MenuComponent } from './menu/menu.component';\nimport { ButtonMenuTopCenterComponent } from './button-menu-top-center/button-menu-top-center.component';\nimport { FlashingMessageComponent } from './flashing-message/flashing-message.component';\nimport { ChatService } from './../chat.service';\nimport { FormsModule } from '@angular/forms';\n//import { ChatitemComponent } from './chatitem/chatitem.component';\nimport { RouterModule, Routes } from '@angular/router';\nimport { PageNotFoundComponent } from './page-not-found/page-not-found.component';\nimport { ChatcomponentComponent } from './chatcomponent/chatcomponent.component';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTabsModule} from '@angular/material/tabs';\n\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { MatListModule } from '@angular/material/list';\nimport {MatGridListModule} from '@angular/material/grid-list';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { AreeNewsComponent } from './aree-news/aree-news.component';\nimport { ArticlepreviewComponent } from './articlepreview/articlepreview.component';\nimport { MapdialogComponent } from './mapdialog/mapdialog.component';\nimport { AddyourareaComponent } from './addyourarea/addyourarea.component';\nimport { CompletearticleComponent } from './completearticle/completearticle.component';\nimport { WebsiteComponent } from './website/website.component';\nimport { RvplanerComponent } from './rvplaner/rvplaner.component';\nimport { HereMapComponent } from './here-map/here-map.component';\nimport { RVareaComponent } from './rvarea/rvarea.component';\nimport { HttpClientModule } from '@angular/common/http';\nimport { PlacetovisitComponent } from './placetovisit/placetovisit.component';\nimport {MatSelectModule} from '@angular/material/select';\nimport { CamperreviewComponent } from './camperreview/camperreview.component';\nimport { ReviewviewComponent } from './reviewview/reviewview.component';\nimport { ArticlesComponent } from './articles/articles.component';\nimport { LocationdetailsComponent } from './locationdetails/locationdetails.component';\n\n\n//import {NgbModule} from '@ng-bootstrap/ng-bootstrap';\n\n\nconst appRoutes: Routes = [\n // { path: 'crisis-center', component: CrisisListComponent },\n //{ path: 'CamperChat/:id', component: AppComponent },\n { path: 'RVPlanner', component:RvplanerComponent },\n { path: 'Articles', component:ArticlesComponent },\n { path: '', component:WebsiteComponent },\n { path: ':id', component:WebsiteComponent },\n \n // { path: 'heroes', component: HeroListComponent,data: { title: 'Heroes List' }},\n //{ path: '',redirectTo: '/',pathMatch: 'full'},\n { path: '**', component: PageNotFoundComponent }\n \n];\n\n\n@NgModule({\n declarations: [\n \n AppComponent,\n MenuComponent,\n ButtonMenuTopCenterComponent,\n FlashingMessageComponent,\n PageNotFoundComponent,\n ChatcomponentComponent,\n AreeNewsComponent,\n ArticlepreviewComponent,\n MapdialogComponent,\n AddyourareaComponent,\n CompletearticleComponent,\n WebsiteComponent,\n RvplanerComponent,\n HereMapComponent,\n RVareaComponent,\n PlacetovisitComponent,\n CamperreviewComponent,\n ReviewviewComponent,\n ArticlesComponent,\n LocationdetailsComponent \n ],\n\n imports: [\n BrowserModule,\n RouterModule.forRoot(\n appRoutes\n ),\n \n FormsModule,\n FontAwesomeModule,\n MatTooltipModule,\n MatButtonModule,\n MatInputModule,\n MatTabsModule,\n MatListModule,\n MatSelectModule,\n MatGridListModule,\n MatCardModule,\n MatDialogModule,\n BrowserAnimationsModule,\n HttpClientModule\n ],\n exports:[\n CommonModule],\n providers: [ChatService,\n DataService],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n ","\nimport { Itemtoshow } from './../../itemtoshow';\nimport { Chatmessage } from './../chatmessage';\nimport { Component, OnInit } from '@angular/core';\nimport { MatDialog, MatDialogConfig} from '@angular/material/dialog';\nimport { MapdialogComponent } from './../mapdialog/mapdialog.component';\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport * as xml2js from 'xml2js';\n\n\n@Component({\n selector: 'app-aree-news',\n templateUrl: './aree-news.component.html',\n styleUrls: ['./aree-news.component.css']\n})\nexport class AreeNewsComponent implements OnInit {\n\n public now: Date = new Date();\n messages: Chatmessage[] = [];\n \n items: Itemtoshow[] = [];\n userinterfacemessage:string;\n SenderName:string;\n elementtoDisplay:number;\n\n\n\n constructor(public dialog:MatDialog, private bvAPI:BvroboticsapiService) {\n var DefaultItem = new Itemtoshow;\n DefaultItem.localita = 'Configuration ...';\n DefaultItem.description = 'Configuration ...';\n \n DefaultItem.http = 'Configuration ...';\n DefaultItem.itemtype= 'Configuration ...';\n DefaultItem.latitudine='Configuration ...';\n DefaultItem.lobgitudine='Configuration ...';\n DefaultItem.localita='Configuration ...';\n DefaultItem.provincia='Configuration ...';\n DefaultItem.tipo='Configuration ...';\n DefaultItem.tipologia='Configuration ...';\n DefaultItem.mtipo='Configuration ...';\n\n\n\n this.items.push(DefaultItem);\n this.elementtoDisplay = 0;\n }\n\n ngOnInit(): void {\n\n this.bvAPI.getArea().subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n //Empty the array\n while (that.items.length>0) { that.items.pop(); }\n\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n \n areaDaMostrare.http = element.http;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n that.items.push(areaDaMostrare);\n\n if (this.items.length>1)\n //Generate a random number between 1 and the number of elements\n this.elementtoDisplay = Math.floor((Math.random() * this.items.length) + 1);\n else\n this.elementtoDisplay = 0;\n\n \n });\n \n \n });\n\n \n });\n\n }\n\n GetFullMap(latitude,longitude) {\n \n //send Latitude and Longitude\n const dialogConfig = new MatDialogConfig();\n dialogConfig.data = {latitude: latitude, longitude: longitude}\n let dialogRef = this.dialog.open(MapdialogComponent, dialogConfig);\n\n }\n\n}\n","\n\n \n \n \n {{items[elementtoDisplay].localita}}\n {{items[elementtoDisplay].tipologia}}\n \n \n \n {{items[elementtoDisplay].description}}\n\n \n \n \n \n","import { LocationdetailsComponent } from './../locationdetails/locationdetails.component';\nimport { Articles } from './../../articles';\nimport { CompletearticleComponent } from './../completearticle/completearticle.component';\nimport { Component, OnInit, Input, Output, EventEmitter, Inject} from '@angular/core';\n\nimport {MatDialog, MatDialogConfig} from '@angular/material/dialog';\n\nimport { MatTabGroup } from '@angular/material/tabs';\nimport { Subscription, timer } from 'rxjs';\nimport { switchMap, take} from 'rxjs/operators';\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport { DOCUMENT, Location } from '@angular/common';\nimport * as xml2js from 'xml2js';\n\n\n\n\n\n\n\n\n@Component({\n selector: 'app-articlepreview',\n templateUrl: './articlepreview.component.html',\n styleUrls: ['./articlepreview.component.css']\n})\nexport class ArticlepreviewComponent implements OnInit {\n\n \n \n subscription: Subscription; //This is for the timer\n subResult:string;\n titolo:string;\n sottotitolo:string;\n articolo:string;\n articoloBreve: string;\n CodArticolo:string;\n configCompleted:boolean = false;\n isShowed:boolean=false;\n IsNews:boolean=false;\n ArticlesList: Articles[] = [];\n \n\n \n \n \n SenderName:string;\n \n @Input() BoxID:string;\n @Input() tabName:MatTabGroup;\n\n @Output() SearchFromChild = new EventEmitter();\n\n constructor(private dialog: MatDialog, private bvAPI:BvroboticsapiService, @Inject(DOCUMENT) private document: Document) {\n \n\n this.titolo = 'Configuration ...';\n this.sottotitolo = 'Configuration ...';\n this.articolo = 'Configuration ...';\n this.articoloBreve = 'Configuration ...';\n \n\n }\n\n ngOnInit(): void {\n\n/*\n if(this.BoxID=='mainnews')\n var url = 'approver/GetRVData.aspx?Action=Article&ID=NWRandom';\n else\n var url = 'approver/GetRVData.aspx?Action=Article&ID=Random'; \n var uri = encodeURI(url);\n \n*/\n\n\nif ((this.BoxID == 'mainnews')|| (this.BoxID == 'centerleft')||(this.BoxID == 'centerright')) {\n this.bvAPI.manageArticleConfiguration(this.BoxID).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n\n var tipologia = json.GetRVData.element[0].tipologia;\n if (tipologia=='NW')\n that.IsNews=true;\n \n that.articoloBreve = json.GetRVData.element[0].descrizione;\n that.CodArticolo = json.GetRVData.element[0].codice;\n that.titolo=json.GetRVData.element[0].località;\n that.sottotitolo=json.GetRVData.element[0].provincia;\n \n that.configCompleted=true;\n });\n\n });\n}\n\nelse {\n this.bvAPI.getArticleList().subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n \n var article = new Articles();\n article.articoloBreve = element.Desc;\n article.CodArticolo = element.cod;\n article.titolo=element.loc;\n article.sottotitolo=element.prov;\n that.ArticlesList.push(article);\n\n });\n \n that.configCompleted=true;\n });\n\n });\n}\n\n\n}\n\n\n \n goToUrl(uri): void {\n this.document.location.href = uri;\n \n }\n\n gotoArticles() {\n this.goToUrl(\"https://www.buonevacanze.org/?uName=Articles\");\n }\n\n GetFullArticle() {\n \n\n this.bvAPI.getSpecificArticle(this.CodArticolo).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n \n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n latitudine: json.GetRVData.element[0].latitudine,\n longitudine: json.GetRVData.element[0].longitudine,\n news: that.IsNews,\n http:json.GetRVData.element[0].http,\n httptesto:json.GetRVData.element[0].httptesto}\n if(that.IsNews) {\n let dialogRef = that.dialog.open(CompletearticleComponent, dialogConfig);\n }\n else\n {\n let dialogRef = that.dialog.open(LocationdetailsComponent, dialogConfig);\n }\n \n \n \n });\n \n \n });\n \n \n\n }\n\n GetDetailArticle(id:string) {\n \n\n this.bvAPI.getSpecificArticle(id).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n latitudine: json.GetRVData.element[0].latitudine,\n longitudine: json.GetRVData.element[0].longitudine,\n news: that.IsNews,\n http:json.GetRVData.element[0].http}\n let dialogRef = that.dialog.open(CompletearticleComponent, dialogConfig);\n \n \n \n \n });\n \n \n });\n \n \n\n }\n\n SearchRVLocation(location:string) {\n \n \n this.SearchFromChild.emit(location);\n\n this.tabName.selectedIndex = 1; //move to Aree Sosta\n\n alert(\"Se presente, il risultato verrà visualizzato nell'area chat in alto\");\n \n }\n \n\n}\n\n","
\n\n \n \n \n \n \n \n \n {{titolo}}\n {{sottotitolo}}\n \n \n

\n {{articoloBreve}}...\n\n
\n \n \n \n \n \n
\n
\n\n\n\n
\n \n \n \n {{article.titolo}}\n \n \n \n

\n {{article.articoloBreve}}...\n\n
\n \n \n \n
\n

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

\n
\n \n

\n
\n
\n \n \n \n
\n Qui troverai una selezione completa dei nostri articoli. L'elenco include l'archivio degli articoli in ordine di inserimento\n\n","\nimport { Menucomponents } from './../model/menucomponents';\nimport { Component, OnInit, Input } from '@angular/core';\n\n\n\n@Component({\n selector: 'app-button-menu-top-center',\n templateUrl: './button-menu-top-center.component.html',\n styleUrls: ['./button-menu-top-center.component.css']\n})\nexport class ButtonMenuTopCenterComponent implements OnInit {\n \n \n //input from the main\n @Input() MnuElements:Menucomponents[];\n @Input() ButtonTitle:string;\n\n constructor() { \n \n \n }\n\n ngOnInit(): void {\n }\n dettaglio(id) {\n \n }\n}\n","\r\n
\r\n \r\n \r\n {{ButtonTitle}}\r\n \r\n \r\n {{menuEntry.desc}}\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n","import { Itemtoshow } from './../../itemtoshow';\nimport { Component, OnInit } from '@angular/core';\nimport { MatDialog, MatDialogConfig} from '@angular/material/dialog';\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport * as xml2js from 'xml2js';\nimport { ReviewviewComponent } from '../reviewview/reviewview.component';\n\n@Component({\n selector: 'app-camperreview',\n templateUrl: './camperreview.component.html',\n styleUrls: ['./camperreview.component.css']\n})\nexport class CamperreviewComponent implements OnInit {\n \n items: Itemtoshow[] = [];\n userinterfacemessage:string;\n breakpoint:number=3;\n\n constructor(public dialog:MatDialog, private bvAPI:BvroboticsapiService) {\n var DefaultItem = new Itemtoshow;\n \n DefaultItem.localita='Configuration ...';\n DefaultItem.provincia='Configuration ...';\n \n this.items.push(DefaultItem);\n }\n\n ngOnInit(): void {\n\n this.breakpoint = (window.innerWidth <= 900) ? 1 : 3;\n\n this.bvAPI.getReviewList().subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n while (that.items.length>0) { that.items.pop(); }\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n \n areaDaMostrare.localita=element.loc;\n areaDaMostrare.provincia=element.prov;\n areaDaMostrare.codice= element.cod; //http is used as code because there is no value defined for this item\n \n \n that.items.push(areaDaMostrare);\n \n });\n \n \n });\n\n \n });\n\n }\n\n GetFullArticle(codice) {\n \n\n this.bvAPI.getSpecificArticle(codice).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n \n news: false,\n http:json.GetRVData.element[0].http}\n let dialogRef = that.dialog.open(ReviewviewComponent, dialogConfig);\n \n \n });\n \n \n });\n \n \n\n }\n\n}\n","\n \n\n
\n alt=\"Card image cap\">\n
\n
{{item.localita}}
\n

{{item.provincia}}

\n
\n
\n\n \n \n
\n
\n","import { MapdialogComponent } from './../mapdialog/mapdialog.component';\n\nimport { Itemtoshow } from './../../itemtoshow';\nimport { Chatmessage } from './../chatmessage';\n\nimport { Component, OnInit, Input, Inject } from '@angular/core';\nimport {MatDialog, MatDialogConfig} from '@angular/material/dialog';\nimport { DOCUMENT } from '@angular/common';\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport * as xml2js from 'xml2js';\n\n\n@Component({\n selector: 'app-chatcomponent',\n templateUrl: './chatcomponent.component.html',\n styleUrls: ['./chatcomponent.component.css']\n})\nexport class ChatcomponentComponent implements OnInit {\n\n @Input() username:string;\n @Input() groupselected:string;\n @Input() groupname:string;\n\n\n\n \n public now: Date = new Date();\n DecreaseConstant: number = 1;\n messages: Chatmessage[] = [];\n \n items: Itemtoshow[] = [];\n userinterfacemessage:string;\n SenderName:string;\n \n\n constructor(public dialog:MatDialog, private bvAPI:BvroboticsapiService,\n @Inject(DOCUMENT) private document: Document) { }\n\n ngOnInit(): void {\n\n //retrieve the previous list of messages\n this.messages = JSON.parse(localStorage.getItem('Messages'+this.groupname.split(' ').join('-')) || '[]');\n\n //Delete from messages Robotics Postmaster entry\n for( var i = 0; i < this.messages.length; i++){\n \n if(this.messages[i].sender === 'Robotic Postmaster') {\n this.messages.splice(i, 1); \n i--;\n } \n\n}\n\n if(this.groupname == 'Main Group') {\n if(this.username == null) { \n\n var msgtodisplay = new Chatmessage('Robotic Postmaster',\"Benvenuto in Buonevacanze.org. Non sei autenticato. Richiedi un account gratuito o utilizza solo i servizi base\",this.now,'Main Group',null);\n this.messages.push(msgtodisplay);\n }\n else {\n var msgtodisplay = new Chatmessage('Robotic Postmaster',\"Ciao \"+this.username + \", bentornato su Buonevacanze.org. scrivi --help per aiuto sui comandi. Altimenti cerca un area o visualizza un articolo\",this.now,'Main Group',null);\n this.messages.push(msgtodisplay);\n }\n }\n \n\n \n\n //TIMER:TIMER:TIMER\n //Set the function to read messages (every 5 secs)\n setInterval(function( grpName, that) { \n \n \n if(grpName == 'Main Group')\n this.DecreaseConstant = 2;\n \n that.bvAPI.getMessage(grpName, that.messages.length-this.DecreaseConstant).subscribe((data)=>{\n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n //let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n \n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n //Date received\n that.now = new Date();\n \n try {\n if(json.GetMessage.ReturnMessage != 'No Raws retrieved') {\n json.GetMessage.MSGElementAry[0].Element.forEach(element => {\n \n that.SenderName = element.Author;\n var theMessage = element.Message;\n if(that.SenderName == 'Robotic Configurator:' + that.username) {\n var locationJString = JSON.parse(theMessage);\n \n locationJString.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n areaDaMostrare.http = element.httptesto;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n that.items.push(areaDaMostrare);\n \n });\n \n var msgtodisplay = new Chatmessage(null,theMessage,that.now,that.groupname,that.items);\n \n \n }\n else {\n //Prepare the message object\n var msgtodisplay = new Chatmessage(that.SenderName,theMessage,that.now,that.groupname,null);\n }\n if (that.SenderName != 'Robotic Configurator'){\n \n //Push The message into the list only if it is not a configuration message\n that.messages.push(msgtodisplay);\n \n localStorage.setItem('Messages'+that.groupname.split(' ').join('-'), JSON.stringify(that.messages));\n }\n });\n }\n }\n catch(e) {\n //Empty all the lists and the storage (Start from scratch because of an error)\n \n localStorage.removeItem('Messages'+grpName.split(' ').join('-'));\n that.ClearMessageList();\n \n }\n });\n \n });\n \n }\n \n \n \n , 15000,this.groupname, this); \n \n }\n\n \n CheckMessage() {\n \n \n if(this.groupname == 'Main Group')\n this.DecreaseConstant = 2;\n\n this.bvAPI.getMessage(this.groupname, this.messages.length-this.DecreaseConstant).subscribe((data)=>{\n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n \n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n //Date received\n that.now = new Date();\n try {\n if(json.GetMessage.ReturnMessage != 'No Raws retrieved') {\n json.GetMessage.MSGElementAry[0].Element.forEach(element => {\n \n that.SenderName = element.Author;\n var theMessage = element.Message;\n if(that.SenderName == 'Robotic Configurator:' + that.username) {\n var locationJString = JSON.parse(theMessage);\n\n locationJString.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n areaDaMostrare.http = element.httptesto;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n that.items.push(areaDaMostrare);\n \n });\n\n var msgtodisplay = new Chatmessage(null,theMessage,that.now,that.groupname,that.items);\n\n\n }\n else {\n //Prepare the message object\n var msgtodisplay = new Chatmessage(that.SenderName,theMessage,that.now,that.groupname,null);\n }\n if (that.SenderName != 'Robotic Configurator'){\n \n //Push The message into the list only if it is not a configuration message\n that.messages.push(msgtodisplay);\n \n localStorage.setItem('Messages'+that.groupname.split(' ').join('-'), JSON.stringify(that.messages));\n }\n });\n }\n }\n \n catch(e) {\n //empty the storage\n localStorage.removeItem('Messages'+that.groupname.split(' ').join('-'));\n that.ClearMessageList();\n }\n });\n \n \n });\n\n\n }\n\n\n GetFullMap(latitude,longitude) {\n\n\n \n \n //send Latitude and Longitude\n const dialogConfig = new MatDialogConfig();\n dialogConfig.data = {latitude: latitude, longitude: longitude}\n let dialogRef = this.dialog.open(MapdialogComponent, dialogConfig);\n\n }\n\n ClearMessageList() {\n \n //Empty the array\n while (this.messages.length) { this.messages.pop(); }\n \n }\n goToUrl(url): void {\n var uri = encodeURI(url);\n uri = uri.replace('#','');\n \n if((uri.indexOf('http:')>-1)||(uri.indexOf('https:')>-1)){\n this.document.location.href = uri;\n }\n else{\n this.document.location.href = 'https://'+uri;\n }\n}\n\n}\n","\n\n
\n
\n
    \n
  • \n\n
    \n
    \n
    \n \n \n \n
    \n
    \n {{message.sender}}:{{message.txtmsg}}\n {{message.datemsg | date:'HH:mm:ss dd/MM/yyyy'}}\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n {{card.itemtype}}  {{card.localita}}\n {{card.tipologia}}\n \n \n \n \n {{card.description}} \n \n \n \n \n Accomodation:{{card.tipo}}    \n Services:{{card.tipologia}}    \n Location:{{card.mTipo}}\n\n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    MA\n
    \n \n \n
  • \n
\n
\n
","import { Itemtoshow } from './../itemtoshow';\nexport class Chatmessage {\n sender:string;\n txtmsg:string;\n datemsg:Date;\n groupmsg:string;\n viewitems: Itemtoshow[];\n \n \n constructor(sender:string,txtmsg:string,datemsg:Date,groupmsg:string,viewitems:Itemtoshow[]) {\n this.sender=sender;\n this.txtmsg=txtmsg;\n this.datemsg=datemsg;\n this.groupmsg=groupmsg;\n this.viewitems=viewitems;\n\n } \n}\n","\nimport { Component, Inject, OnInit } from '@angular/core';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\n\n\n\ndeclare var ol: any; //Variable used to display the map\n\n\nexport interface DialogData{\n titolo: string;\n sottotitolo: string;\n articolo: string;\n latitudine: string;\n longitudine: string;\n news:boolean;\n http:string;\n httptesto:string;\n\n}\n\n\n@Component({\n selector: 'app-completearticle',\n templateUrl: './completearticle.component.html',\n styleUrls: ['./completearticle.component.css']\n})\nexport class CompletearticleComponent implements OnInit {\n \n map: any;\n \n linkhttp:SafeResourceUrl;\n youtube:boolean;\n\n constructor(\n private dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: DialogData, public sanitizer: DomSanitizer) {}\n \n ngOnInit(): void {\n \n\n \n \n\n if(/youtube/i.test(this.data.http) == true) {\n this.youtube = true;\n this.linkhttp = this.sanitizer.bypassSecurityTrustResourceUrl(this.data.http);\n }\n else\n this.youtube = false;\n\n var mousePositionControl = new ol.control.MousePosition({\n coordinateFormat: ol.coordinate.createStringXY(4),\n projection: 'EPSG:4326',\n \n // comment the following two lines to have the mouse position\n // be placed within the map.\n className: 'custom-mouse-position',\n target: document.getElementById('mouse-position'),\n undefinedHTML: ' '\n \n });\n \n this.map = new ol.Map({\n target: 'map',\n controls: ol.control.defaults({\n attributionOptions: {\n collapsible: false\n }\n }).extend([mousePositionControl]),\n layers: [\n new ol.layer.Tile({\n source: new ol.source.OSM()\n })\n ],\n view: new ol.View({\n center: ol.proj.fromLonLat([parseFloat(this.data.longitudine),parseFloat(this.data.latitudine)]),\n \n zoom: 13\n })\n });\n \n this.map.on('click', function (args) {\n console.log(args.coordinate);\n var lonlat = ol.proj.transform(args.coordinate, 'EPSG:3857', 'EPSG:4326');\n console.log(lonlat);\n var lon = lonlat[0];\n var lat = lonlat[1];\n //alert(`lat: ${lat} long: ${lon}`);\n });\n //alert(this.data.latitude + ':' + this.data.longitude);\n //this.addPoint(parseFloat(this.data.latitudine),parseFloat(this.data.longitudine));\n \n } \n\n \n CloseClick(): void {\n this.dialogRef.close();\n }\n \n moveToCenter() {\n\n var view = this.map.getView();\n \n view.setCenter(ol.proj.fromLonLat([parseFloat(this.data.longitudine), parseFloat(this.data.latitudine)]));\n \n view.setZoom(15);\n //ol.marker({lon:parseFloat(this.data.longitude), lat:parseFloat(this.data.latitude)}).bindPopup('The center of the world').addTo(this.map);\n \n \n }\n\n}\n\n","ARTICOLI DI BUONEVACANZE.ORG\n

{{data.titolo}}

\n\n\n\n
\n
\n \n
\n

\n \n \n

\n \n
{{data.articolo}}
\n\n

\n \n\n\n
\n \n
\n
\n\n \n \n
\n \n \n \n\n
\n\n
\n
\n\n\n
\n\n
\n \n
\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-flashing-message',\n templateUrl: './flashing-message.component.html',\n styleUrls: ['./flashing-message.component.css']\n})\nexport class FlashingMessageComponent implements OnInit {\n FlashMessage:string;\n constructor() {\n this.FlashMessage = 'NEW: La BVChat è attiva. Effettua il login oppure richiedi subito un account gratuito.';\n }\n\n ngOnInit(): void {\n }\n\n}\n","\r\n

{{FlashMessage}}

\r\n
","import { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport { Subscription } from 'rxjs';\nimport { stringify } from 'querystring';\nimport { DataService } from './../../data.service';\n\nimport { Itemtoshow } from './../../itemtoshow';\nimport { Component, OnInit, OnChanges, SimpleChanges, ViewChild, ElementRef, Input } from '@angular/core';\nimport {FormControl} from '@angular/forms';\nimport { NgForm } from '@angular/forms';\n\nimport {ChangeDetectorRef} from '@angular/core'\nimport { Location } from '@angular/common';\nimport * as xml2js from 'xml2js';\n\n\n\n\ndeclare var H: any;\n//declare var routeTo:string;\n\n\n@Component({\n selector: 'here-map',\n templateUrl: './here-map.component.html',\n styleUrls: ['./here-map.component.css']\n})\nexport class HereMapComponent implements OnInit {\n\n\n myLat:string = 'NoDef';\n myLon:string = 'NoDef';\n routeTo:string = 'NoDef';\n veichle:string = 'car';\n\n //Timeout for the navigation\n navigationTimeout = 5000;\n //disableSelect = new FormControl(false);\n\n @ViewChild(\"map\")\n public mapElement: ElementRef;\n\n @Input()\n public appId: any;\n\n @Input()\n public appCode: any;\n\n @Input()\n public start: any;\n\n @Input()\n public finish: any;\n\n @Input()\n public width: any;\n\n @Input()\n public height: any;\n\n directions:string[] = [];\n \n\n private platform: any;\n private map: any;\n private router: any;\n public herejason:string;\n private PlaceHolderPlaced:boolean=false;\n\n items: Itemtoshow[] = [];\n targetElement:any;\n defaultLayers:any;\n message:string;\n ui:any;\n navTimer:any;\n navTimeout:number;\n pathDrown:boolean = false;\n duringNavMarker:any;\n \n\n svgMarkup:string = '' +\n 'ME';\n \n\n public constructor(private data:DataService, private ref: ChangeDetectorRef, private bvAPI:BvroboticsapiService) { \n\n \n }\n\n\n public ngOnInit() {\n this.platform = new H.service.Platform({\n 'apikey': 'tfrc343AbP8CCjd2PKNbJHp80sugVeXNMZxF5vi8kMk'\n });\n \n\n \n this.router = this.platform.getRoutingService(null, 8);\n\n this.data.currentMessage.subscribe(message => { this.message = message; this.MoveTheMap(this.message); })\n\n }\n\n MoveTheMap(msg:string)\n {\n //alert(this.message);\n if (msg != 'InitMSG') {\n if(msg.indexOf('CENTRA:')>-1) {\n var lat = msg.substr(7,msg.indexOf(';')-7);\n var lon = msg.substr(msg.indexOf(';') + 1, msg.length-lat.length-8);\n this.map.setCenter({lat:lat, lng:lon});\n this.map.setZoom(13);\n if(this.PlaceHolderPlaced == false)\n this.map.addObject(new H.map.Marker({lat:lat, lng:lon}))\n }\n else if(msg.indexOf('ROUTE:')>-1) {\n this.routeTo = msg;\n if((this.myLat == 'NoDef')||(this.myLon == 'NoDef'))\n alert('Please retrieve your current location first');\n else{\n this.route();\n }\n\n\n \n }\n }\n\n }\n\n IconWithNumber(index) {\n var Marker:string = '' +\n '' + index +'';\n return Marker;\n }\n\n StartNavigating() {\n \n if(this.pathDrown == true) {\n this.navTimeout = this.navigationTimeout;\n this.navTimer = setInterval(this.ShowPosOnMapduringNav, 5000, this);\n }\n else alert('Percorso non ancora definito');\n \n }\n\n StopNavigating() {\n \n this.navTimeout = 1;\n clearInterval(this.navTimer);\n \n }\n\n ShowPosOnMapduringNav(that) {\n \n \n that.navTimeout--;\n if(that.navTimeout == 0)\n clearInterval(this.navTimer);\n else {\n that.map.setCenter({lat:that.myLat, lng:that.myLon});\n that.map.setZoom(18);\n var icon = new H.map.Icon(that.svgMarkup);\n this.map.removeObjects(this.duringNavMarker);\n this.duringNavMarker = new H.map.Marker({\n lat: that.myLat,\n lng: that.myLon\n }, {icon: icon});\n that.map.addObject(this.duringNavMarker);\n }\n\n }\n\n ShowPosOnMap() {\n \n \n if((this.myLat == 'NoDef')||(this.myLon == 'NoDef')){\n \n //get the current position\n this.GetCurrPosAction().then(pos=>\n {\n //alert(`Positon: ${pos.lng} ${pos.lat}`);\n this.myLat = pos.lat;\n this.myLon = pos.lng;\n this.map.setCenter({lat:this.myLat, lng:this.myLon});\n this.map.setZoom(13);\n var icon = new H.map.Icon(this.svgMarkup);\n this.map.removeObjects(this.map.getObjects());\n \n //this.map.addObject(new H.map.Marker({lat:this.myLat, lng:this.myLon}))\n \n var CamperMarker = new H.map.Marker({\n lat: this.myLat,\n lng: this.myLon\n }, {icon: icon});\n this.map.addObject(CamperMarker);\n \n });\n \n }\n else {\n alert('cerco la poszione');\n this.map.setCenter({lat:this.myLat, lng:this.myLon});\n this.map.setZoom(13);\n var icon = new H.map.Icon(this.svgMarkup);\n this.map.removeObjects(this.map.getObjects());\n\n //this.map.addObject(new H.map.Marker({lat:this.myLat, lng:this.myLon}))\n\n var CamperMarker = new H.map.Marker({\n lat: this.myLat,\n lng: this.myLon\n }, {icon: icon});\n this.map.addObject(CamperMarker);\n\n\n\n\n \n \n }\n \n \n \n }\n\n\n GetCurrPosAction(): Promise\n {\n return new Promise((resolve, reject) => {\n\n /*//navigator.geolocation.WhatchPosition (Use this if you want constantly monitor the user position)\n navigator.geolocation.getCurrentPosition(resp => {\n\n resolve({lng: resp.coords.longitude, lat: resp.coords.latitude});\n },\n err => {\n reject(err);\n });*/\n\n var watchID = navigator.geolocation.watchPosition( resp => {\n\n resolve({lng: resp.coords.longitude, lat: resp.coords.latitude});\n },\n err => {\n reject(err);\n });\n var timeout = setTimeout( function() { navigator.geolocation.clearWatch( watchID ); }, 5000 );\n \n \n\n });\n\n }\n \n GetCurrPos() {\n this.GetCurrPosAction().then(pos=>\n {\n //alert(`Positon: ${pos.lng} ${pos.lat}`);\n this.myLat = pos.lat;\n this.myLon = pos.lng;\n \n });\n //navigator.geolocation.getCurrentPosition(this.ShowPos);\n }\n\n onSubmit(f: NgForm){ \n\n //alert(f.value.myPos);\n //alert(f.value.AreaLoc);\n //alert(f.value.moveBy);\n //Chanage in Uppercase\n //f.value.provincia =f.value.provincia.toUpperCase();\n\n this.SearchRVLocation(f.value.AreaLoc);\n\n //f.reset();\n \n\n }\n \n GetNearestArea() {\n\n \n\n // optionally - resize a larger PNG image to a specific size\n var pngIcon = new H.map.Icon(\"https://www.bvrobotics.com/media/RV/CamperChat/MAPRV.png\", {size: {w: 56, h: 56}});\n\n /*var svgMarkup = '' +\n 'ME';\n*/\n var icon = new H.map.Icon(this.svgMarkup);\n\n //If the current position is not yet retrieved, retrieve it\n if((this.myLat != 'NoDef')||(this.myLon != 'NoDef')){\n\n //Remove objects from the map\n this.map.removeObjects(this.map.getObjects());\n\n //this.map.addObject(new H.map.Marker({lat:this.myLat, lng:this.myLon}))\n\n var CamperMarker = new H.map.Marker({\n lat: this.myLat,\n lng: this.myLon\n }, {icon: icon});\n this.map.addObject(CamperMarker);\n \n }\n else{\n alert(\"Devi prima recuperare la tua posizione\");\n return;\n }\n\n this.bvAPI.getNearestAreas(this.myLat,this.myLon,'0.07').subscribe((data)=>{\n \n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n \n //and now pass the JSON string to the area object\n that.data.changeMessage(JTranslation);\n \n var json = JSON.parse( JTranslation );\n //Empty the array\n while (that.items.length>0) { that.items.pop(); }\n var areaIndex: number = 0;\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n if(element.latitudine !='') {\n areaDaMostrare.indice = areaIndex;\n }\n areaDaMostrare.description = element.descrizione;\n \n areaDaMostrare.http = element.http;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n that.items.push(areaDaMostrare);\n \n \n if(element.latitudine !='') {\n //that.map.addObject(new H.map.Marker({lat:element.latitudine, lng:element.longitudine}))\n var Areaicon = new H.map.Icon(that.IconWithNumber(areaIndex));\n var AreaMarker = new H.map.Marker({\n lat: element.latitudine,\n lng: element.longitudine\n }, {icon: Areaicon});\n that.map.addObject(AreaMarker);\n that.PlaceHolderPlaced = true;\n \n areaIndex++;\n\n \n }\n \n });\n\n //Add the bubbles (for now this is removed)\n //that.addInfoBubble(that.map, JTranslation);\n \n that.map.setCenter({lat:that.myLat, lng:that.myLon});\n that.map.setZoom(11);\n \n \n });\n \n this.ref.detectChanges();\n });\n }\n\n\n\n addMarkerToGroup(group, coordinate, html) {\n var marker = new H.map.Marker(coordinate);\n // add custom data to the marker\n marker.setData(html);\n group.addObject(marker);\n }\n\n addInfoBubble(map, JTranslation) {\n var group = new H.map.Group();\n \n map.addObject(group);\n \n // add 'tap' event listener, that opens info bubble, to the group\n group.addEventListener('tap', function (evt) {\n //alert('dentro');\n // event target is the marker itself, group is a parent event target\n // for all objects that it contains\n //alert(evt.target.getPosition());\n //map.setCenter(evt.target.getPosition());\n var bubble = new H.ui.InfoBubble(evt.target.getGeometry(), {\n // read custom data\n content: evt.target.getData()\n });\n // show info bubble\n this.ui.addBubble(bubble);\n //bubble.open();\n }, false);\n \n var json = JSON.parse( JTranslation );\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n if(element.latitudine !='') { //only if it exist\n this.addMarkerToGroup(group, {lat:element.latitudine, lng:element.longitudine},\n '
'+element.descrizione+'' +\n '
City of Manchester Stadium
Capacity: 48,000
');\n }\n \n \n });\n }\n\n\n SearchRVLocation(location:string) {\n \n\n this.bvAPI.getSpecificArea(location).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n\n //and now pass the JSON string to the area object\n that.data.changeMessage(JTranslation);\n \n var json = JSON.parse( JTranslation );\n //Empty the array\n while (that.items.length>0) { that.items.pop(); }\n var areaIndex: number = 0;\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n if(element.latitudine !='') {\n areaDaMostrare.indice = areaIndex;\n }\n \n areaDaMostrare.http = element.http;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n that.items.push(areaDaMostrare);\n\n if(element.latitudine !='') {\n //that.map.addObject(new H.map.Marker({lat:element.latitudine, lng:element.longitudine}))\n var Areaicon = new H.map.Icon(that.IconWithNumber(areaIndex));\n var AreaMarker = new H.map.Marker({\n lat: element.latitudine,\n lng: element.longitudine\n }, {icon: Areaicon});\n that.map.addObject(AreaMarker);\n that.PlaceHolderPlaced = true;\n \n areaIndex++;\n\n }\n\n });\n\n\n that.map.setCenter({lat:that.items[0].latitudine, lng:that.items[0].lobgitudine});\n that.map.setZoom(13);\n \n \n });\n\n this.ref.detectChanges();\n });\n\n \n }\n\n\n public ngAfterViewInit() {\n\n \n\n this.defaultLayers = this.platform.createDefaultLayers();\n this.targetElement = document.getElementById('mapContainer');\n \n \n \n this.map = new H.Map(\n this.targetElement,\n \n this.defaultLayers.vector.normal.map,\n {\n zoom: 6,\n center: {lat:41.9081836, lng:12.5794352},\n pixelRatio: window.devicePixelRatio || 1 \n }\n );\n\n \n\n // add a resize listener to make sure that the map occupies the whole container\n //window.addEventListener('resize', () => this.map.getViewPort().resize());\n\n //Step 3: make the map interactive - MapEvents enables the event system - Behavior implements default interactions for pan/zoom (also on mobile touch environments)\n var behavior = new H.mapevents.Behavior(new H.mapevents.MapEvents(this.map));\n\n // Step 4: Create the default UI:\n this.ui = H.ui.UI.createDefault(this.map,this.defaultLayers);\n \n //this.route(this.start, this.finish);\n\n\n //try to switch to https\n if (location.protocol === 'http:') {\n window.location.href = location.href.replace('http://www.buonevacanze.org/RVPlanner', 'https://www.buonevacanze.org?uName=RVPlanner');\n }\n\n }\n\n /*public ngOnChanges(changes: SimpleChanges) {\n if((changes[\"start\"] && !changes[\"start\"].isFirstChange()) || (changes[\"finish\"] && !changes[\"finish\"].isFirstChange())) {\n this.route(this.start, this.finish);\n \n }\n \n } */\n\n \n public route() {\n\n \n \n //Collect the End coordinates\n var Endlat = this.routeTo.substr(6,this.routeTo.indexOf(';')-6);\n var Endlon = this.routeTo.substr(this.routeTo.indexOf(';') + 1, this.routeTo.length-Endlat.length-7);\n \n \n\n //Collect the Start coordinates\n var StartLat = this.myLat;\n var StartLon = this.myLon\n \n let params = {\n transportMode: this.veichle,\n representation: 'display',\n routeattributes : 'waypoints,summary,shape,legs',\n maneuverattributes: 'direction,action',\n origin: StartLat + ',' + StartLon, // Brandenburg Gate\n destination: Endlat + ',' + Endlon, // Friedrichstraße Railway Station\n return: 'polyline,actions,travelSummary,turnByTurnActions'\n };\n\n /*let params = {\n \"mode\": \"fastest;car\",\n \"waypoint0\": \"geo!\" + StartLat + ',' + StartLon,\n \"waypoint1\": \"geo!\" + Endlat + ',' + Endlon,\n \"representation\": \"display\"\n }*/\n \n this.map.removeObjects(this.map.getObjects());\n this.router.calculateRoute(params, data => {\n \n this.herejason = JSON.stringify(data)\n var azione:string;\n var from:string;\n var to:string;\n var manovra:string;\n\n if(data) {\n \n //Empty the direction array\n while(this.directions.length>0)\n this.directions.pop();\n\n //alert('length:'+ data.routes[0].sections[0].turnByTurnActions.length);\n \n for (var i in data.routes[0].sections[0].turnByTurnActions){\n \n azione='';\n if (data.routes[0].sections[0].turnByTurnActions.hasOwnProperty(i)) {\n azione = data.routes[0].sections[0].turnByTurnActions[i].action;\n \n \n from = '';\n if(data.routes[0].sections[0].turnByTurnActions[i].action!= 'depart') {\n if (data.routes[0].sections[0].turnByTurnActions[i].hasOwnProperty('currentRoad')) \n if (data.routes[0].sections[0].turnByTurnActions[i].currentRoad.hasOwnProperty('name')) \n from = data.routes[0].sections[0].turnByTurnActions[i].currentRoad.name[0].value;\n }\n \n to='';\n if(data.routes[0].sections[0].turnByTurnActions[i].action!='arrive') {\n if (data.routes[0].sections[0].turnByTurnActions[i].hasOwnProperty('nextRoad'))\n if (data.routes[0].sections[0].turnByTurnActions[i].nextRoad.hasOwnProperty('name'))\n to= data.routes[0].sections[0].turnByTurnActions[i].nextRoad.name[0].value;\n }\n \n if((from=='')&&(to ==''))\n manovra = 'keep the direction';\n else\n manovra = azione + ' ' + from + ' to ' + to;\n \n\n this.directions.push(manovra);\n }\n }\n \n data.routes[0].sections.forEach((section) => {\n // Create a linestring to use as a point source for the route line\n let linestring = H.geo.LineString.fromFlexiblePolyline(section.polyline);\n \n // Create a polyline to display the route:\n let routeLine = new H.map.Polyline(linestring, {\n style: { strokeColor: 'blue', lineWidth: 3 }\n });\n \n // Create a marker for the start point:\n var icon = new H.map.Icon(this.svgMarkup);\n\n let startMarker = new H.map.Marker(section.departure.place.location, {icon: icon});\n //this.map.addObject(CamperMarker);\n\n //let startMarker = new H.map.Marker(section.departure.place.location);\n \n // Create a marker for the end point:\n let endMarker = new H.map.Marker(section.arrival.place.location);\n \n // Add the route polyline and the two markers to the map:\n this.map.addObjects([routeLine, startMarker, endMarker]);\n \n // Set the map's viewport to make the whole route visible:\n this.map.getViewModel().setLookAtData({bounds: routeLine.getBoundingBox()});\n });\n\n //you can now navigate\n this.pathDrown=true;\n }\n else\n alert('ERROR:No Route to your destination');\n }, error => {\n this.pathDrown=true;\n alert(error);\n });\n }\n\n\n public routeOLD() {\n\n \n \n //Collect the End coordinates\n var Endlat = this.routeTo.substr(6,this.routeTo.indexOf(';')-6);\n var Endlon = this.routeTo.substr(this.routeTo.indexOf(';') + 1, this.routeTo.length-Endlat.length-7);\n \n \n\n //Collect the Start coordinates\n var StartLat = this.myLat;\n var StartLon = this.myLon\n \n this.directions = [];\n \n this.router = this.platform.getRoutingService();\n \n \n\n var params = {\n 'routingMode': 'fast',\n 'transportMode': 'car',\n // The start point of the route:\n 'waypoint0': \"geo!\" + StartLat + ',' + StartLon,\n // The end point of the route:\n 'waypoint1': \"geo!\" + Endlat + ',' + Endlon,\n // Include the route shape in the response\n 'mode' : 'fastest;car;traffic:enabled',\n 'departure' : 'now',\n 'return': 'polyline'\n };\n\n \n this.map.removeObjects(this.map.getObjects());\n \n this.router.calculateRoute(params, data => {\n alert('data:'+JSON.stringify(data));\n if(data.routes.length) {\n this.herejason=JSON.stringify(data);\n alert(this.herejason);\n /*\n this.directions = data.response.route[0].leg[0].maneuver;\n data = data.response.route[0];\n let lineString = new H.geo.LineString();\n data.shape.forEach(point => {\n let parts = point.split(\",\");\n lineString.pushLatLngAlt(parts[0], parts[1]);\n });\n let routeLine = new H.map.Polyline(lineString, {\n style: { strokeColor: \"blue\", lineWidth: 5 }\n });\n let startMarker = new H.map.Marker({\n lat: this.start.split(\",\")[0],\n lng: this.start.split(\",\")[1]\n });\n let finishMarker = new H.map.Marker({\n lat: this.finish.split(\",\")[0],\n lng: this.finish.split(\",\")[1]\n });\n this.map.addObjects([routeLine, startMarker, finishMarker]);\n this.map.setViewBounds(routeLine.getBounds()); */\n \n data.routes[0].sections.forEach((section) => {\n\n // Create a linestring to use as a point source for the route line\n let linestring = H.geo.LineString.fromFlexiblePolyline(section.polyline);\n \n this.directions.push(section.maneuver);\n \n // Create a polyline to display the route:\n let routeLine = new H.map.Polyline(linestring, {\n style: { strokeColor: 'blue', lineWidth: 3 }\n });\n \n // Create a marker for the start point:\n let startMarker = new H.map.Marker(section.departure.place.location);\n \n // Create a marker for the end point:\n let endMarker = new H.map.Marker(section.arrival.place.location);\n \n // Add the route polyline and the two markers to the map:\n this.map.addObjects([routeLine, startMarker, endMarker]);\n \n // Set the map's viewport to make the whole route visible:\n this.map.getViewModel().setLookAtData({bounds: routeLine.getBoundingBox()});\n });\n\n\n \n }\n else alert('risposta vuota');\n }, error => {\n console.error(error);\n });\n}\n\n\n\n}","\n\n\n
\n \n
\n
\n

Buonevacanze Route Planner


\n Route Planner è un pianificatore di percorsi che potrai utilizzare per identificare il percorso migliore verso la tua destinazione considerando le dimensioni del tuo veicolo. Nella selezione del percorso potrai impostare il tipo di veicolo, le dimensioni e cercare un area di sosta alla destinazione del tuo viaggio.
\n Il database delle aree di sosta di Buonevacanze.org è costantemente aggiornato dagli utenti, dagli appassionati e dalla redazione. \n
\n\n
\n \n \n    Lat:{{myLat}} ; Lon:{{myLon}}

\n \n \n Select your veichle\n \n \n
\n

\n\n
\n
\n \n
\n
\n
\n\n\n \n \n Search for a parking area\n \n
\n \n \n Write here a location\n
\n \n \n
\n
\n \n

\n \n \n \n
\n
\n

\n \n Actions\n \n \n \n \n \n \n
\n \n
\n
\n
\n\n
\n \n
\n\n\n
\n \n \n Directions\n \n \n \n
    \n
  1. \n

    \n
  2. \n
\n
\n \n
\n
\n
\n \n
","import { Component, Inject, OnInit } from '@angular/core';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\n\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\n\n\n\ndeclare var ol: any; //Variable used to display the map\n\n\nexport interface DialogData{\n titolo: string;\n sottotitolo: string;\n articolo: string;\n latitudine: string;\n longitudine: string;\n news:boolean;\n http:string;\n httptesto:string;\n\n}\n\n\n\n@Component({\n selector: 'app-locationdetails',\n templateUrl: './locationdetails.component.html',\n styleUrls: ['./locationdetails.component.css']\n})\n\nexport class LocationdetailsComponent implements OnInit {\n\n map: any;\n linkhttp:SafeResourceUrl;\n youtubePresent:boolean;\n\n constructor(\n private dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: DialogData, public sanitizer: DomSanitizer) {}\n \n ngOnInit(): void {\n\n if(/youtube/i.test(this.data.httptesto) == true) {\n this.youtubePresent = true;\n this.linkhttp = this.sanitizer.bypassSecurityTrustResourceUrl(this.data.httptesto);\n }\n else\n this.youtubePresent = false;\n \n var mousePositionControl = new ol.control.MousePosition({\n coordinateFormat: ol.coordinate.createStringXY(4),\n projection: 'EPSG:4326',\n \n // comment the following two lines to have the mouse position\n // be placed within the map.\n className: 'custom-mouse-position',\n target: document.getElementById('mouse-position'),\n undefinedHTML: ' '\n \n });\n \n this.map = new ol.Map({\n target: 'map',\n controls: ol.control.defaults({\n attributionOptions: {\n collapsible: false\n }\n }).extend([mousePositionControl]),\n layers: [\n new ol.layer.Tile({\n source: new ol.source.OSM()\n })\n ],\n view: new ol.View({\n center: ol.proj.fromLonLat([parseFloat(this.data.longitudine),parseFloat(this.data.latitudine)]),\n \n zoom: 13\n })\n });\n \n this.map.on('click', function (args) {\n console.log(args.coordinate);\n var lonlat = ol.proj.transform(args.coordinate, 'EPSG:3857', 'EPSG:4326');\n console.log(lonlat);\n var lon = lonlat[0];\n var lat = lonlat[1];\n //alert(`lat: ${lat} long: ${lon}`);\n });\n //alert(this.data.latitude + ':' + this.data.longitude);\n //this.addPoint(parseFloat(this.data.latitudine),parseFloat(this.data.longitudine));\n \n } \n\n \n CloseClick(): void {\n this.dialogRef.close();\n }\n \n moveToCenter() {\n\n var view = this.map.getView();\n \n view.setCenter(ol.proj.fromLonLat([parseFloat(this.data.longitudine), parseFloat(this.data.latitudine)]));\n \n view.setZoom(15);\n //ol.marker({lon:parseFloat(this.data.longitude), lat:parseFloat(this.data.latitude)}).bindPopup('The center of the world').addTo(this.map);\n \n \n }\n\n}\n","

\nLe località di buonevacanze.org\n\n

{{data.titolo}}

\n

\n\n\n
\n
\n \n
\n

\n\n \n \n\n

{{data.sottotitolo}} {{data.latitudine}} {{data.longitudine}}

\n \n \n

\n \n
{{data.articolo}}
\n\n

\n\n Sito WEB: {{data.http}}\n

\n \n
\n \n
\n
\n \n \n \n
\n \n \n \n \n
\n \n
\n
\n \n\n
\n\n

\n\n
\n
\n
\n\n

\n\n\n
\n \n \n
\n\n\n\n","//import { DialogData } from './../articleview/articleview.component';\n\nimport { Component, Inject, OnInit } from '@angular/core';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\n\ndeclare var ol: any; //Variable used to display the map\n\nexport interface MapDialogData {\n latitude: string;\n longitude: string;\n\n}\n@Component({\n selector: 'app-mapdialog',\n templateUrl: './mapdialog.component.html',\n styleUrls: ['./mapdialog.component.css']\n})\nexport class MapdialogComponent implements OnInit {\n\n map: any;\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: MapDialogData) {}\n\n ngOnInit(): void {\n var mousePositionControl = new ol.control.MousePosition({\n coordinateFormat: ol.coordinate.createStringXY(4),\n projection: 'EPSG:4326',\n \n // comment the following two lines to have the mouse position\n // be placed within the map.\n className: 'custom-mouse-position',\n target: document.getElementById('mouse-position'),\n undefinedHTML: ' '\n \n });\n \n this.map = new ol.Map({\n target: 'map',\n controls: ol.control.defaults({\n attributionOptions: {\n collapsible: false\n }\n }).extend([mousePositionControl]),\n layers: [\n new ol.layer.Tile({\n source: new ol.source.OSM()\n })\n ],\n view: new ol.View({\n center: ol.proj.fromLonLat([parseFloat(this.data.longitude),parseFloat(this.data.latitude)]),\n \n zoom: 15\n })\n });\n \n this.map.on('click', function (args) {\n console.log(args.coordinate);\n var lonlat = ol.proj.transform(args.coordinate, 'EPSG:3857', 'EPSG:4326');\n console.log(lonlat);\n var lon = lonlat[0];\n var lat = lonlat[1];\n //alert(`lat: ${lat} long: ${lon}`);\n });\n //alert(this.data.latitude + ':' + this.data.longitude);\n this.addPoint(parseFloat(this.data.latitude),parseFloat(this.data.longitude));\n } \n\n CloseClick(): void {\n this.dialogRef.close();\n }\n\n moveToCenter() {\n\n var view = this.map.getView();\n\n view.setCenter(ol.proj.fromLonLat([parseFloat(this.data.longitude), parseFloat(this.data.latitude)]));\n\n view.setZoom(15);\n //ol.marker({lon:parseFloat(this.data.longitude), lat:parseFloat(this.data.latitude)}).bindPopup('The center of the world').addTo(this.map);\n\n \n }\n\n addPoint(lat: number, lng: number) {\n var vectorLayer = new ol.layer.Vector({\n source: new ol.source.Vector({\n features: [new ol.Feature({\n geometry: new ol.geom.Point(ol.proj.transform([lng, lat], 'EPSG:4326', 'EPSG:3857')),\n })]\n }),\n style: new ol.style.Style({\n image: new ol.style.Icon({\n anchor: [0.5, 0.5],\n anchorXUnits: \"fraction\",\n anchorYUnits: \"fraction\",\n src: \"https://bvrobotics.com/media/rv/camperchat/pholder.png\"\n })\n })\n });\n this.map.addLayer(vectorLayer);\n }\n\n}\n","\n
\n\n
\n \n \n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-menu',\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.css']\n})\nexport class MenuComponent implements OnInit {\n\n link_menu_1:string;\n link_menu_2:string;\n link_menu_3:string;\n link_menu_4:string;\n link_menu_5:string;\n\n constructor() { \n this.link_menu_1 = 'Buonevacanze Home';\n this.link_menu_2 = 'CamperChat login';\n this.link_menu_3 = 'BVIoT Management Console';\n this.link_menu_4 = 'About BVRobotics and the author';\n this.link_menu_5 = 'Contact';\n }\n\n ngOnInit(): void {\n }\n\n}\n ","","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-page-not-found',\n templateUrl: './page-not-found.component.html',\n styleUrls: ['./page-not-found.component.css']\n})\nexport class PageNotFoundComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n

Wrong access procedure. Please try again connecting to the loging page

\n
\n
","import { LocationdetailsComponent } from './../locationdetails/locationdetails.component';\nimport { Itemtoshow } from './../../itemtoshow';\n\nimport { Component, OnInit } from '@angular/core';\nimport { MatDialog, MatDialogConfig} from '@angular/material/dialog';\n\n\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport * as xml2js from 'xml2js';\n\n@Component({\n selector: 'app-placetovisit',\n templateUrl: './placetovisit.component.html',\n styleUrls: ['./placetovisit.component.css']\n})\nexport class PlacetovisitComponent implements OnInit {\n\n \n items: Itemtoshow[] = [];\n userinterfacemessage:string;\n breakpoint:number=3;\n \n \n\n\n constructor(public dialog:MatDialog, private bvAPI:BvroboticsapiService) {\n var DefaultItem = new Itemtoshow;\n \n DefaultItem.localita='Configuration ...';\n DefaultItem.provincia='Configuration ...';\n \n this.items.push(DefaultItem);\n \n }\n\n ngOnInit(): void {\n\n this.breakpoint = (window.innerWidth <= 900) ? 1 : 3;\n\n this.bvAPI.getLocationList().subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n while (that.items.length>0) { that.items.pop(); }\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n \n areaDaMostrare.localita=element.loc;\n areaDaMostrare.provincia=element.prov;\n areaDaMostrare.codice= element.cod; //http is used as code because there is no value defined for this item\n \n that.items.push(areaDaMostrare);\n \n });\n \n \n });\n\n \n });\n\n }\n\n GetFullArticle(codice) {\n \n\n this.bvAPI.getSpecificArticle(codice).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n latitudine: json.GetRVData.element[0].latitudine,\n longitudine: json.GetRVData.element[0].longitudine,\n news: false,\n http:json.GetRVData.element[0].http,\n httptesto:json.GetRVData.element[0].httptesto}\n let dialogRef = that.dialog.open(LocationdetailsComponent, dialogConfig);\n \n \n });\n \n \n });\n \n \n\n }\n\n}\n","\n \n \n \n \n \n {{item.localita}}\n {{item.provincia}}\n \n \n \n \n\n","import { Component, Inject, OnInit } from '@angular/core';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\n\nexport interface DialogData{\n titolo: string;\n sottotitolo: string;\n articolo: string;\n news:boolean;\n http:string;\n\n}\n\n\n@Component({\n selector: 'app-reviewview',\n templateUrl: './reviewview.component.html',\n styleUrls: ['./reviewview.component.css']\n})\nexport class ReviewviewComponent implements OnInit {\n\n constructor(private dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: DialogData) { }\n\n ngOnInit(): void {\n \n }\n CloseClick(): void {\n this.dialogRef.close();\n }\n\n}\n","

\n\n

{{data.titolo}}

\n\n\n\n
\n
\n \n
\n

\n\n \n \n\n

{{data.sottotitolo}}

\n \n \n

\n \n
{{data.articolo}}
\n\n

\n\n
\n \n
\n \n

\n \n \n\n
\n\n
\n \n \n
\n\n\n","import { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport { DataService } from '../../data.service';\nimport { Itemtoshow } from '../../itemtoshow';\nimport { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';\nimport {ChangeDetectorRef} from '@angular/core';\nimport * as xml2js from 'xml2js';\n\n\n\n\n@Component({\n selector: 'app-rvarea',\n templateUrl: './rvarea.component.html',\n styleUrls: ['./rvarea.component.css'],\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class RVareaComponent implements OnInit {\n\n public now: Date = new Date();\n \n \n items: Itemtoshow[] = [];\n userinterfacemessage:string;\n SenderName:string;\n elementtoDisplay:number;\n message:string;\n\n\n constructor(private ref: ChangeDetectorRef, private data:DataService, private bvAPI:BvroboticsapiService) {\n var DefaultItem = new Itemtoshow;\n DefaultItem.localita = 'Configuration ...';\n DefaultItem.description = 'Configuration ...';\n \n DefaultItem.http = 'Configuration ...';\n DefaultItem.itemtype= 'Configuration ...';\n DefaultItem.latitudine='Configuration ...';\n DefaultItem.lobgitudine='Configuration ...';\n DefaultItem.localita='Configuration ...';\n DefaultItem.provincia='Configuration ...';\n DefaultItem.tipo='Configuration ...';\n DefaultItem.tipologia='Configuration ...';\n DefaultItem.mtipo='Configuration ...';\n\n this.items.push(DefaultItem);\n \n \n }\n\n\n ngOnInit() {\n\n\n this.bvAPI.getArea().subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n //Empty the array\n while (that.items.length>0) { that.items.pop(); }\n\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n \n areaDaMostrare.http = element.http;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n that.items.push(areaDaMostrare);\n \n });\n \n \n });\n\n this.ref.detectChanges();\n });\n \n\n this.data.currentMessage.subscribe(message => {this.message = message ; this.manageTheMessage(this.message);})\n \n }\n\n\n manageTheMessage(msg:string)\n {\n \n try {\n var json = JSON.parse( msg );\n //Empty the array\n while (this.items.length>0) { this.items.pop(); }\n var areaIndex:number = 0;\n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n if(element.latitudine!='') {\n areaDaMostrare.indice = areaIndex; \n areaIndex++;\n } \n areaDaMostrare.http = element.http;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n \n this.items.push(areaDaMostrare);\n \n });\n //this.ref.detectChanges();\n }\n catch(e) {\n ; //Do nothing just not lose the observable object\n //alert(e); // error in the above string (in this case, yes)!\n }\n \n \n \n }\n\n public ngAfterViewInit() {\n \n this.ref.detectChanges();\n }\n\n GetFullMap(latitude,longitude) {\n \n //alert('Changing the message');\n this.data.changeMessage('CENTRA:' + latitude + ';' + longitude);\n \n }\n\n SearchRouteTo(latitude,longitude) {\n \n //alert('Changing the message');\n this.data.changeMessage('ROUTE:' + latitude + ';' + longitude);\n \n } \n\n}\n","
    \n
  • \n \n \n
    \n \n \n \n {{item.indice}}\n \n \n
    \n\n\n\n \n \n {{item.localita}}\n {{item.tipologia}}\n
    \n \n \n {{item.description}}\n\n \n \n \n \n \n
    \n
  • \n
","import { Component, OnInit } from '@angular/core';\n\n\n@Component({\n selector: 'app-rvplaner',\n templateUrl: './rvplaner.component.html',\n styleUrls: ['./rvplaner.component.css']\n})\nexport class RvplanerComponent implements OnInit {\n\n public start: string;\n public finish: string;\n public title:string\n\n public constructor() {\n \n\n this.start = \"41.9249,15.8499\";\n this.finish = \"41.9204,15.8374\";\n }\n\n public ngOnInit() {\n this.title='camper-routes';\n }\n\n public ngAfterViewInit() {}\n \n \n\n}\n","\n Route Planner è un servizio gratuito che ti permette di pianificare con comodità i tuoi viaggi utilizando un sistema di mappe e di routing adatte proprio a \n viaggi in camper o in camion. Basta selezionare nella apposita casella iol mezzo usato ed il sistema, automaticamente valuterà il percorso migliore per il veicolo che hai scelto.\n\n\n","import { LocationdetailsComponent } from './../locationdetails/locationdetails.component';\nimport { OnInit, AfterViewInit, ViewChild } from '@angular/core';\nimport { ChatcomponentComponent } from '../chatcomponent/chatcomponent.component';\n\nimport { GroupElement } from '../group-element';\nimport { Chatmessage } from '../chatmessage';\nimport { Menucomponents } from '../model/menucomponents';\nimport { Component, Inject, ViewChildren, QueryList } from '@angular/core';\nimport { MENUELEMENTS, GROUPELEMENTS } from '../../dati/simulatoremenu';\n\nimport { Router, ActivatedRoute, ParamMap } from '@angular/router';\n\nimport { ReviewviewComponent } from '../reviewview/reviewview.component';\nimport { CompletearticleComponent } from './../completearticle/completearticle.component';\nimport {MatDialog, MatDialogConfig} from '@angular/material/dialog';\n\nimport { HttpParams } from '@angular/common/http';\nimport { faSignInAlt } from '@fortawesome/free-solid-svg-icons';\nimport { faAmericanSignLanguageInterpreting } from '@fortawesome/free-solid-svg-icons';\nimport { faPaperPlane } from '@fortawesome/free-solid-svg-icons';\nimport { faDatabase } from '@fortawesome/free-solid-svg-icons';\nimport { faImage } from '@fortawesome/free-solid-svg-icons';\nimport { DOCUMENT, Location } from '@angular/common';\nimport { MatTabGroup } from '@angular/material/tabs';\nimport { BvroboticsapiService } from './../../bvroboticsapi.service';\nimport * as xml2js from 'xml2js';\nimport { Itemtoshow } from './../../itemtoshow';\n\n\n\n@Component({\n selector: 'app-website',\n templateUrl: './website.component.html',\n styleUrls: ['./website.component.css']\n})\nexport class WebsiteComponent implements OnInit, AfterViewInit {\n\n \n listamenuleft : Menucomponents [] = [];\n listamenucenter : Menucomponents [] = [];\n listamenuright : Menucomponents [] = [];\n listagroup: GroupElement[] = [];\n leftbuttontitle :string;\n centerbuttontitle :string;\n rightbuttontitle :string;\n username :string;\n initialLocation:string = 'UNDEF';\n initialArticle:string = 'UNDEF';\n initialReview:string = 'UNDEF';\n initialNews:string = 'UNDEF'\n GroupSelected: string;\n SelectedGroupIcon:string;\n faSignInAlt = faSignInAlt;\n faNameChange = faAmericanSignLanguageInterpreting;\n faSend = faPaperPlane;\n faRemoveCache = faDatabase;\n faChangePicture = faImage;\n breakpoint:number = 2;\n \n \n @ViewChildren(ChatcomponentComponent) ChatDOMS: QueryList\n //@ViewChild(ChatcomponentComponent) ChatDOM!: ChatcomponentComponent;\n @ViewChild('id2tab') private id2tab: MatTabGroup\n\n public ConnectionDate: Date = new Date();\n \n\n var1: string;\n var2: string;\n\n\n //list of messages and message\n //msgtodisplay:Chatmessage;\n messages: Chatmessage[] = [];\n\n userinterfacemessage:string;\n \n //app title\n title = 'Buonevacanze.org';\n \n\n constructor(private route: ActivatedRoute,\n private dialog: MatDialog,\n private router: Router,\n private bvAPI:BvroboticsapiService,\n @Inject(DOCUMENT) private document: Document) { \n \n \n this.ConnectionDate = new Date();\n \n\n //assign a title to buttons\n this.leftbuttontitle = 'Useful links';\n this.centerbuttontitle = 'How To...';\n this.rightbuttontitle ='Articles';\n\n //Add all menu elements into the menu\n\n GROUPELEMENTS.forEach(element => {\n \n //The default selected element is mainGroup\n if(element.name == \"Main Group\") {\n element.selected = true;\n this.GroupSelected = element.name;\n this.SelectedGroupIcon = element.url;\n }\n this.listagroup.push(element); \n })\n\n\n MENUELEMENTS.forEach(element => {\n if(element.idMenu==0) {\n this.listamenuleft.push(element);\n }\n else if(element.idMenu==1) {\n this.listamenucenter.push(element);\n }\n else if(element.idMenu==2) {\n this.listamenuright.push(element);\n }\n });\n \n }\n\n getParamValueQueryString( paramName ) {\n const url = window.location.href;\n let paramValue;\n if (url.includes('?')) {\n const httpParams = new HttpParams({ fromString: url.split('?')[1] });\n paramValue = httpParams.get(paramName);\n }\n return paramValue;\n }\n \n\n emptyCache() {\n \n GROUPELEMENTS.forEach(element => {\n localStorage.removeItem('Messages'+element.name.split(' ').join('-'));\n });\n \n this.ChatDOMS.forEach(element =>{\n element.ClearMessageList();\n });\n \n }\n\n SearchRVLocation(tabGroup: MatTabGroup) {\n \n //In case of an empty string do nothing\n if (this.userinterfacemessage == null)\n return;\n\n var location = this.userinterfacemessage\n var searchMessage = location;\n //Change the selected group\n this.GroupSelected='Aree Sosta';\n\n //Change the icon\n GROUPELEMENTS.forEach(element => { \n \n if(element.name == this.GroupSelected) {\n this.SelectedGroupIcon = element.url;\n }\n })\n\n \n\n this.bvAPI.searchAreaUsingAI(searchMessage).subscribe((data)=>{\n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n\n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n var retMess = json.AIMatching.ReturnMessage;\n if (retMess == 'No match found'){\n return('No location found for your request');\n }\n else {\n var position = parseInt(json.AIMatching.Element[0].VariableElementAT,10);\n \n var location = searchMessage.substr(position,searchMessage.length-position);\n\n that.bvAPI.getSpecificArea(location).subscribe((data)=>{\n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n //let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n \n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n if(json.GetRVData.ReturnMessage != 'No location found') {\n var items: Itemtoshow[] = [];\n \n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n areaDaMostrare.http = element.httptesto;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n items.push(areaDaMostrare);\n \n });\n\n var now = new Date();\n var msgtodisplay = new Chatmessage(null,'Robotic Configurator',now,'Aree Sosta',items);\n that.ChatDOMS.forEach(element =>{\n if(element.groupname == 'Aree Sosta')\n element.messages.push(msgtodisplay);\n element.DecreaseConstant++; // increase the decrese constant of this element to skip the message\n });\n \n \n \n \n\n }\n });\n \n });\n }\n \n });\n });\n\n\n \n\n this.userinterfacemessage = '';\n tabGroup.selectedIndex = 1;\n\n \n }\n\nDisplayNews(id) {\n \n this.bvAPI.getSpecificArticle(id).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n latitudine: json.GetRVData.element[0].latitudine,\n longitudine: json.GetRVData.element[0].longitudine,\n news: true,\n http:json.GetRVData.element[0].http}\n let dialogRef = that.dialog.open(CompletearticleComponent, dialogConfig);\n \n \n \n \n });\n \n \n });\n\n}\n\nDisplayReview(id) { //This is to display info on a location at startup\n\n this.bvAPI.getSpecificArticle(id).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n \n news: false,\n http:json.GetRVData.element[0].http}\n let dialogRef = that.dialog.open(ReviewviewComponent, dialogConfig);\n \n \n });\n \n \n });\n \n \n\n}\n\n\n\n\n\nDisplayArticle(id) { //This is to display info on a location at startup\n\n\n this.bvAPI.getSpecificArticle(id).subscribe((data)=>{\n \n \n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n \n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n \n var JTranslation = JSON.stringify(result);\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n const dialogConfig = new MatDialogConfig();\n dialogConfig.height = '900px';\n dialogConfig.data = {titolo: json.GetRVData.element[0].località, \n sottotitolo: json.GetRVData.element[0].provincia, \n articolo: json.GetRVData.element[0].descrizione,\n latitudine: json.GetRVData.element[0].latitudine,\n longitudine: json.GetRVData.element[0].longitudine,\n news: false,\n http:json.GetRVData.element[0].http}\n let dialogRef = that.dialog.open(LocationdetailsComponent, dialogConfig);\n \n \n \n });\n \n \n });\n\n\n}\n\n\n\nSearchFromChild(loc) { //This is to display a parking area at startup\n \n \n var location = loc\n var searchMessage = location;\n //Change the selected group\n this.GroupSelected='Aree Sosta';\n\n //Change the icon\n GROUPELEMENTS.forEach(element => { \n \n if(element.name == this.GroupSelected) {\n this.SelectedGroupIcon = element.url;\n }\n })\n\n\n this.bvAPI.getSpecificArea(location).subscribe((data)=>{\n //let parser = require('xml2js').parseString;\n const parser = new xml2js.Parser({strict: true, trim: true });\n \n let that = this;\n parser.parseString(data, function(err,result){\n if (err) {\n console.log(err.stack);\n }\n\n var JTranslation = JSON.stringify(result);\n\n //alert(JTranslation);\n var json = JSON.parse( JTranslation );\n \n if(json.GetRVData.ReturnMessage != 'No location found') {\n var items: Itemtoshow[] = [];\n \n json.GetRVData.RVElementAry[0].Element.forEach(element => {\n \n var areaDaMostrare = new Itemtoshow();\n areaDaMostrare.description = element.descrizione;\n areaDaMostrare.http = element.httptesto;\n areaDaMostrare.itemtype= element.tipologia;\n areaDaMostrare.latitudine=element.latitudine;\n areaDaMostrare.lobgitudine=element.longitudine;\n areaDaMostrare.localita=element.località;\n areaDaMostrare.provincia=element.provincia;\n areaDaMostrare.tipo=element.Atipo;\n areaDaMostrare.tipologia=element.cTipo;\n areaDaMostrare.mtipo=element.mTipo;\n \n items.push(areaDaMostrare);\n \n });\n\n var now = new Date();\n var msgtodisplay = new Chatmessage(null,'Robotic Configurator',now,'Aree Sosta',items);\n that.ChatDOMS.forEach(element =>{\n if(element.groupname == 'Aree Sosta')\n element.messages.push(msgtodisplay);\n element.DecreaseConstant++; // increase the decrese constant of this element to skip the message\n });\n \n }\n });\n \n });\n \n\n}\n\n sendMessage() {\n if(this.userinterfacemessage.indexOf(\"!Set\")>=0) {\n \n if(this.userinterfacemessage.indexOf(\"Name=\")>=0) {\n \n var oldname = this.username;\n \n var NewUserName=this.userinterfacemessage.substr(this.userinterfacemessage.indexOf(\"Name=\") + 5 , this.userinterfacemessage.length- this.userinterfacemessage.indexOf(\"Name=\"));\n \n if(NewUserName == '') {\n alert('wrong command');\n this.userinterfacemessage = '';\n }\n else {\n \n this.username=NewUserName;\n this.userinterfacemessage = 'My old name was: ' + oldname + '. Now I changed my Name in ' + this.username;\n \n }\n \n \n }\n else {\n this.userinterfacemessage = '';\n alert('wrong command');\n }\n }\n \n if ((this.username != null)&&(this.username != '')&&(this.userinterfacemessage!='')) {\n\n var Observer = this.bvAPI.sendMessage(this.userinterfacemessage, this.GroupSelected, this.username).subscribe((data)=>{ /*Do nothing*/ });\n \n\n this.ChatDOMS.forEach(element =>{\n element.CheckMessage();\n });\n this.userinterfacemessage = '';\n }\n else{\n alert(\"WARNING: Wrong message or user not properly signed. Please use the login button to sign and to start sending messages\");\n }\n }\n\ntabChanged(event) {\n this.GroupSelected = event.tab.textLabel;\n GROUPELEMENTS.forEach(element => { \n \n if(element.name == this.GroupSelected) {\n this.SelectedGroupIcon = element.url;\n }\n })\n \n}\n\n\n SetGroup(grpName:string) {\n this.GroupSelected = grpName;\n \n }\n\n ngAfterViewInit() {\n\n if (this.initialLocation !=null) {\n \n var that=this;\n setTimeout (() => {\n that.id2tab.selectedIndex=1;\n \n }, 1000);\n }\n\n }\n ngOnInit() {\n \n\n //try to switch to https\n \n\n this.breakpoint = (window.innerWidth <= 900) ? 1 : 2;\n \n //get the string from the input\n this.username = this.getParamValueQueryString('uName');\n this.initialLocation = this.getParamValueQueryString('location');\n this.initialArticle = this.getParamValueQueryString('article');\n this.initialReview = this.getParamValueQueryString('review');\n this.initialNews = this.getParamValueQueryString('news');\n \n //this.chatService.joinGroup('Main Group');\n\n if (location.protocol === 'http:') {\n window.location.href = location.href.replace('http://www.buonevacanze.org', 'https://www.buonevacanze.org');\n }\n\n\n \n if(this.username == 'RVPlanner')\n this.router.navigate(['RVPlanner'], { relativeTo: this.route });\n\n if(this.username == 'Articles')\n this.router.navigate(['Articles'], { relativeTo: this.route });\n\n if (this.initialLocation != null) { //Parking area info\n this.SearchFromChild(this.initialLocation);\n\n }\n if (this.initialArticle != null) { //Location info\n this.DisplayArticle(this.initialArticle);\n \n }\n if (this.initialReview != null) { //Location info\n this.DisplayReview(this.initialReview);\n \n }\n if (this.initialNews != null) { //Location info\n this.DisplayNews(this.initialNews);\n \n }\n }\n\ngoToUrl(uri): void {\n this.document.location.href = uri;\n \n}\n\ngotoRoutePlanner() {\n this.goToUrl(\"https://www.buonevacanze.org/?uName=RVPlanner\");\n}\n\n\n\nonResize(event) {\n this.breakpoint = (event.target.innerWidth <= 900) ? 1 : 2;\n}\n\n\n}\n","\n
\n\n
\n \n \n \n
\n

\n

Pianifica la tua vita in plenair ... rendi il tuo viaggio unico!!

\n \n

\n \n\n

\n
\n

\n \n

\n \n \n\n \n \n \n Buonevacanze.org è anche su Alexa\n \n \n

\n Da oggi, sulla piattaforma Amazon è disponibile la skill Alexa collegata al database di Buonevacanze.org. La skill si chiama \"Aree di sosta per camper\"\n e può essere installata su qualsiasi dispositivo Alexa.
\n Attraverso di essa poterete ricercare, utilizzando la voce, un area di sosta in una delle località\n disponibili nel nostro database. Vi basterà dire: \"Alexa cerca un area di sosta a...\" seguito dalla località, meta della vostra destinazione in camper.
\n

\n E' anche possibile farsi inviare via email il dettaglio di tutte le aree di sosta ricercate (necessaria autorizzazione utilizzo email di Amazon). Per fare ciò basterà\n dire: \"Inviami una mail\" oppure \"inviami l'itinerario via email\".
\n

\n La skill mette a disposizione anche un simpatico sistema di suggerimenti che può essere utilizzato per pianificare i tuoi prossimi viaggi. Prova a dire: \"Suggeriscimi un itinerario\" ed Alexa, \n randomicamente, selezionerà un itinerario tra quelli disponibili proponendo tutti i dettagli del luogo di destinazione. Troverai qui le istruzioni per l'uso e l'installazione\n

\n

\n \n

\n
\n
\n\n

\n\n \n \n

\n\n \n \n\n \n \n\n \n \n \n\n \n\n Content 2 \n \n \n \n \n \n \n \n \n \n \n
\n\n
\n\n La chat di buonevacanze.org ha due principali caratteristiche. Anzitutto il sistema di encription denominato: \"Cobra\". Sviluppato da BVRobotics.com è tra i piu' sicuri disponibili. In piu' all'interno\ndella chat stessa sono sparsi diversi chatbot basati su AI Cobra che automaticamente possono rispondere alle domande dei partecipanti alla chat, adattando le proprie risposte alle domande \no alle esigenze dell'utilizzatore. Certe volte non si riesce a distinguere se si parla con un partecipante alla community o se si parla con un algoritmo di intelligenza artificiale.\n\n\n \n\n \n
\n \n
\n
\n
\n
\n {{GroupSelected}}\n \n
\n
\n \n
\n
\n \n
\n \n
\n Messages from {{username}}\n Logged at: {{ConnectionDate | date:'HH:mm:ss EEE'}}\n
\n \n
\n
\n
\n
\n
\n
\n
\n \n\n
\n \n\n\n\n\n\n\n\n \n \n \n \n \n \n \n \n \n\n \n\n\n\n \n\n        \n \n\n \n \n\n \n\n \n\n
\n

\n
\n \n \n
\n \n

\"RVPlanner    Assistente Buonevacanze.org

\n
Utilizzando questo text box puoi ricercare un area di sosta, un servizio \"carico scarico\" od un servizio campeggio per le tue vacanze. La ricerca può essere \n effettuata utilizzando il sistema di intelligenza artificiale \"Cobra assist\" sviluppato da BVRobotics technology. Utilizza una frase di senso compiuto (Es: \"vorrei andare a Roma\") in italiano e prova ad effettuare la ricerca \n
\n
\n \n Ricerca un area di sosta, un parcheggio od un campeggio\n \n \n
\n\n

\n\n
\n \n \n

\"RVPlanner    Route Planner for Caravan

\n
Finalmente on line il Route Planner di BVRobotics. Utilizzando questa app web potrai configurare i tuoi viaggi in camper costruendo percorsi adatti al tuo veicolo abitativo. Entra nelle pag di route Planner\n e sfrutta il database di Buonevacanze.org per configurare i tuoi percorsi \n
\n

\n \n \n
\n\n

\n\n

\n\n
\n \n

Le nostre schede località

\n \n
\n
\n\n

\n\n

\n\n
\n \n

Le nostre Review di Camper ed accessori

\n \n
\n
\n\n

\n\n

\n
\n \n

In Evidenza

\n \n \n \n \n \n
\n Useful Collection\n From BVRobotics website\n
\n \n \n \n

\n \n \n

\n\n \n \n
\n
\n
\n \n \n \n \n \n\n \n \n \n \n \n \n
\n
\n
\n
\n

\n

Proponi un area alla community

\n \n
\n

\n\n\n
\n \n \n \n
\n","export class Articles {\n \n\n \n titolo:string;\n sottotitolo:string;\n CodArticolo:string;\n articoloBreve: string;\n}","import { Observable } from 'rxjs/Observable';\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\nimport { throwError } from 'rxjs';\nimport { retry, catchError } from 'rxjs/operators';\nimport * as xml2js from 'xml2js';\n\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BvroboticsapiService {\n\n public PROD_SERVR = \"https://www.buonevacanze.org/approver/\";\n public DEV_SERVR = \"http://localhost:50646/\";\n\n public GET_AREA_API = \"GetRVData.aspx?Action=Random&Location=NODEF\";\n public GET_LOCATION_LIST = \"GetRVData.aspx?Action=LocList&Location=NODEF\";\n public GET_REVIEW_LIST = \"GetRVData.aspx?Action=ReviewList&Location=NODEF\";\n public GET_LOCATION_API = \"GetRVData.aspx?Action=Area&Location=\";\n public GET_NEAREST_AREAS = \"GetNearestArea.aspx?\"\n public AI_SEARCH_API = \"AIMatching.aspx?Message=\";\n\n //This variable is needed to update all rest API in one shoot\n private CUR_SERVR = this.PROD_SERVR;\n \n constructor(private httpClient: HttpClient) { }\n\n handleError(error: HttpErrorResponse) {\n let errorMessage = 'Unknown error!';\n if (error.error instanceof ErrorEvent) {\n // Client-side errors\n errorMessage = `Error: ${error.error.message}`;\n } else {\n // Server-side errors\n errorMessage = `Error Code: ${error.status}\\nMessage: ${error.message}`;\n }\n //window.alert(errorMessage); //I am not trowing because otherwise an alert will apear to the user\n return throwError(errorMessage);\n }\n\n public getArea(){\n \n return this.httpClient.get(this.CUR_SERVR + this.GET_AREA_API, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public getLocationList(){\n \n return this.httpClient.get(this.CUR_SERVR + this.GET_LOCATION_LIST, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public getReviewList(){\n \n return this.httpClient.get(this.CUR_SERVR + this. GET_REVIEW_LIST, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public sendMail(to, Subject, message) {\n \n \n var url = 'EmailSender.aspx?TO='+to+'&SUBJECT='+Subject+'&MESSAGE='+message+'&TOKEN=FVJVJJYTFJYTF'\n var uri = encodeURI(url);\n \n return this.httpClient.get(this.CUR_SERVR + uri, {responseType: 'text'}).pipe(catchError(this.handleError));;\n //nothing to return\n \n }\n public sendMessage(message,group,username) {\n \n \n var url = 'RemarkManager.aspx?CALLER='+group+'&AUTHOR='+username+'&MESSAGE='+message+'&NUMBER=999&SEQUENCE=999&RELATION=999'\n var uri = encodeURI(url);\n \n return this.httpClient.get(this.CUR_SERVR + uri, {responseType: 'text'}).pipe(catchError(this.handleError));;\n //nothing to return\n \n }\n\n public getMessage(group,myLast) {\n \n //alert(\"sono dentro e provo ad accedere\");\n var url = 'GetMessage.aspx?GROUP='+ group + '&MYLAST='+myLast;\n var uri = encodeURI(url);\n //alert('requesting:' + this.CUR_SERVR + uri );\n return this.httpClient.get(this.CUR_SERVR + uri, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n \n }\n \n public getSpecificArticle(id){\n \n var url = 'GetRVData.aspx?Action=Article&ID=' + id;\n return this.httpClient.get(this.CUR_SERVR + url, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public manageArticleConfiguration(message)\n {\n\n if (message == 'mainnews')\n var Articleurl = 'GetRVData.aspx?Action=Article&ID=NWRandom'; //Location is not used but can be adapted for future use\n else\n var Articleurl = 'GetRVData.aspx?Action=Article&ID=Random';\n \n return this.httpClient.get(this.CUR_SERVR + Articleurl, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public getArticleList()\n {\n\n \n var Articleurl = 'GetRVData.aspx?Action=ArticleList&Location=any';\n \n return this.httpClient.get(this.CUR_SERVR + Articleurl, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n getNearestAreas(latitude,longitude,radius) {\n\n return this.httpClient.get(this.CUR_SERVR + this.GET_NEAREST_AREAS + 'LATITUDE=' + latitude + '&LONGITUDE=' + longitude + '&RADIUS=' + radius, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public getSpecificArea(location:string){\n \n return this.httpClient.get(this.CUR_SERVR + this.GET_LOCATION_API + location, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public getSpecificAPI(api:string)\n {\n \n return this.httpClient.get(this.CUR_SERVR + api, {responseType: 'text'}).pipe(catchError(this.handleError));;\n \n }\n\n public searchAreaUsingAI(message)\n {\n var url = this.CUR_SERVR + this.AI_SEARCH_API + message + '&Category=AreaSearch';\n var uri = encodeURI(url);\n return this.httpClient.get(uri,{responseType: 'text'}).pipe(catchError(this.handleError));\n \n }\n\n public getIPAddress()\n {\n return this.httpClient.get(\"https://api.ipify.org/?format=json\", {responseType: 'text'}).pipe(catchError(this.handleError));;\n }\n}\n\n\n","import { GROUPELEMENTS } from './dati/simulatoremenu';\n\nimport * as io from 'socket.io-client';\nimport { Observable } from 'rxjs/Observable';\n\n\nexport class ChatService {\n \n \n private url = 'ws://buonevacanze.ddns.net:3000';\n //private url = 'http://localhost:3000';\n private groupname:string;\n private socket; \n beating:NodeJS.Timeout;\n \n\n constructor() {\n \n \n }\n\n public connect(grpName)\n {\n \n \n this.socket = io(this.url, {query:\"name=\" + grpName, secure:false });\n document.addEventListener(\"visibilitychange\", this.handleVisibilityChange, false);\n \n }\n\n public sendMessage(message,group,username) {\n this.socket.emit('add-' + group, '§'+username+'§:'+ message);\n \n \n }\n \n public joinGroup(group) {\n //Create a private group\n this.socket.emit('create', group);\n }\n\n\n public getMessages = (group) => {\n return Observable.create((observer) => {\n this.socket.on(group, (message) => {\n observer.next(message);\n \n });\n });\n\n }\n\n handleVisibilityChange() {\n //socket = this.socket;\n if (document.hidden) {\n \n //emit on server after every 10 seconds\n this.beating = setInterval(function () {\n \n this.socket.emit('heartbeat', { data: \"a\" });\n //alert('msgSent');\n }, 15000)\n \n } else {\n \n console.log(\"çlearing inteval beating from visiblity\");\n clearInterval(this.beating);\n }\n }\n\n} ","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\n@Injectable()\nexport class DataService {\n\n private messageSource = new BehaviorSubject('InitMSG');\n currentMessage = this.messageSource.asObservable();\n\n constructor() { }\n\n changeMessage(message: string) {\n this.messageSource.next(message)\n }\n\n}","import { GroupElement } from './../app/group-element';\r\nimport { Menucomponents } from './../app/model/menucomponents';\r\n\r\nexport const MENUELEMENTS: Menucomponents[] = [\r\n\r\n {idMenu:1,id:0,href:'http://www.bvrobotics.com/RVPlanner.html',desc:'Usare il modulo RVPlanner di Buonevacanze.org'},\r\n {idMenu:1,id:1,href:'http://www.bvrobotics.com/miniservices1.0/SignUpProcedure.html',desc:'Create an user for the Miniservice infrastructure'},\r\n {idMenu:1,id:2,href:'http://www.bvrobotics.com/EndStopsConfig.html',desc:'Configure 3DPrinter Endstops'},\r\n {idMenu:1,id:3,href:'http://www.bvrobotics.com/Multidimensional.html',desc:'Use the BLE protocol'},\r\n {idMenu:1,id:4,href:'http://www.bvrobotics.com/GPS_Accellerometer.html',desc:'Use a GPS device connected with Arduino'},\r\n {idMenu:1,id:5,href:'http://www.bvrobotics.com/SegWayFunc.html',desc:'Build an autobalancer algorithm'},\r\n {idMenu:1,id:6,href:'http://www.bvrobotics.com/FollowMeFunc.html',desc:'Build a FollowMeFunction using Arduino and a PixieCam'},\r\n {idMenu:1,id:7,href:'http://www.bvrobotics.com/GPS_Accellerometer.html',desc:'Install, configure and drive an OLED display'},\r\n {idMenu:1,id:8,href:'http://www.bvrobotics.com/ConfigureArduinoLibrary.html',desc:'Configure the Arduino 101 Curie IMU library'},\r\n {idMenu:1,id:9,href:'http://www.bvrobotics.com/Multidimensional.html',desc:'Use the BLE protocol'},\r\n {idMenu:1,id:10,href:'http://www.bvrobotics.com/HCSR04.html',desc:'Configure the HCSR04 Sonic Sensor in Arduino'},\r\n {idMenu:1,id:11,href:'http://www.bvrobotics.com/Potentiometer.',desc:'Use a potentiometer with Arduino'},\r\n {idMenu:1,id:12,href:'http://www.bvrobotics.com/Zprobe.html',desc:'Configure and install a Zprobe on a Delta 3d Printer'},\r\n {idMenu:1,id:13,href:'http://www.bvrobotics.com/SevenSegs.html',desc:'use more than one seven segments display with Arduino'},\r\n {idMenu:1,id:14,href:'http://www.bvrobotics.com/miniservices1.0/UploadFirmwareNodeMCUConnections.html',desc:'Build build your first IoT home automation device'},\r\n\r\n\r\n {idMenu:0,id:0,href:'https://www.buonevacanze.org/console.aspx',desc:'GadgetConsole'},\r\n {idMenu:0,id:1,href:'https://www.thingiverse.com/Vitmar_2000/designs',desc: 'Thinghiverse objects'},\r\n {idMenu:0,id:2,href:'http://www.buonevacanze.org/approver/default.aspx',desc:'Approver REST'},\r\n {idMenu:0,id:3,href:'http://www.buonevacanze.org/approver/Georeference.aspx',desc:'GeoReference System'},\r\n {idMenu:0,id:4,href:'http://www.buonevacanze.org/approver/configit.aspx',desc:'Configuration Download'},\r\n {idMenu:0,id:5,href:'http://www.bvrobotics.com/DownloadPage.html',desc:'Download Page'},\r\n \r\n {idMenu:2,id:0,href:'http://www.bvrobotics.com/3dPrinting.html',desc:'How 3d printing technology works'},\r\n {idMenu:2,id:1,href:'http://www.bvrobotics.com/ArduinoDevEnvironment.html',desc:'The Arduino Development Framework'},\r\n {idMenu:2,id:2,href:'http://www.bvrobotics.com/REST.html',desc:'How REST functions work'},\r\n {idMenu:2,id:3,href:'http://www.bvrobotics.com/WhatYouCanDo.html',desc:'What you can do with IoT'},\r\n {idMenu:2,id:4,href:'http://www.bvrobotics.com/WhatYouCanDoMS.html',desc:'What you can do with Miniservices'},\r\n {idMenu:2,id:5,href:'http://www.bvrobotics.com/Miniservices1.0/UploadFirmwareNodeMCUFirmware.html',desc:'Configure NodeMCU on arduino DevEnv'}\r\n\r\n]; \r\n\r\nexport const GROUPELEMENTS:GroupElement[] = [\r\n \r\n {url:'https://www.bvrobotics.com/media/RV/CamperChat/Frontale.jpg',name:'Main Group',selected:false},\r\n {url:'https://www.bvrobotics.com/media/RV/CamperChat/AreaSosta.jpg',name:'Aree Sosta',selected:false},\r\n {url:'https://www.bvrobotics.com/media/RV/CamperChat/Accessori.jpg',name:'Accessori',selected:false},\r\n {url:'https://www.bvrobotics.com/media/RV/CamperChat/Meccanica.jpg',name:'Meccanica',selected:false},\r\n {url:'https://www.bvrobotics.com/media/RV/CamperChat/Private.jpg',name:'Private',selected:false}];\r\n ","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","export class Itemtoshow {\n indice:number = 99;\n codice:string;\n itemtype:string;\n description:string;\n longDescription:string;\n localita:string;\n provincia:string;\n tipologia:string;\n latitudine:string;\n lobgitudine:string;\n tipo:string;\n http:string;\n mtipo:string;\n}\n\n\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n ","/* (ignored) */","/* (ignored) */","/* (ignored) */"]}