From 35e34ad74ec5f6ab867f389d49c384102a050843 Mon Sep 17 00:00:00 2001 From: NatureFreshMilk Date: Tue, 12 Feb 2019 13:40:33 +0100 Subject: [PATCH] mapobject config type --- server/app/config.go | 28 +++++++++++++++++++--------- server/static/js/main.js | 6 +++++- server/web/config.go | 4 +++- 3 files changed, 27 insertions(+), 11 deletions(-) diff --git a/server/app/config.go b/server/app/config.go index 830ad66..e2184c5 100644 --- a/server/app/config.go +++ b/server/app/config.go @@ -10,15 +10,20 @@ import ( ) type Config struct { - Port int `json:"port"` - EnablePrometheus bool `json:"enableprometheus"` - EnableRendering bool `json:"enablerendering"` - Webdev bool `json:"webdev"` - WebApi *WebApiConfig `json:"webapi"` - Layers []layer.Layer `json:"layers"` - RenderingFetchLimit int `json:"renderingfetchlimit"` - RenderingJobs int `json:"renderingjobs"` - RenderingQueue int `json:"renderingqueue"` + Port int `json:"port"` + EnablePrometheus bool `json:"enableprometheus"` + EnableRendering bool `json:"enablerendering"` + Webdev bool `json:"webdev"` + WebApi *WebApiConfig `json:"webapi"` + Layers []layer.Layer `json:"layers"` + RenderingFetchLimit int `json:"renderingfetchlimit"` + RenderingJobs int `json:"renderingjobs"` + RenderingQueue int `json:"renderingqueue"` + MapObjects *MapObjectConfig `json:"mapobjects"` +} + +type MapObjectConfig struct { + Bones bool `json:"bones"` } type WebApiConfig struct { @@ -73,6 +78,10 @@ func ParseConfig(filename string) (*Config, error) { }, } + mapobjs := MapObjectConfig{ + Bones: true, + } + cfg := Config{ Port: 8080, EnableRendering: true, @@ -83,6 +92,7 @@ func ParseConfig(filename string) (*Config, error) { RenderingFetchLimit: 1000, RenderingJobs: runtime.NumCPU(), RenderingQueue: 100, + MapObjects: &mapobjs, } info, err := os.Stat(filename) diff --git a/server/static/js/main.js b/server/static/js/main.js index 0427b77..799e690 100644 --- a/server/static/js/main.js +++ b/server/static/js/main.js @@ -33,7 +33,11 @@ api.getConfig().then(function(cfg){ overlays["POI"] = new PoiOverlay(wsChannel, layerMgr); overlays["Labels"] = new LabelOverlay(wsChannel, layerMgr); overlays["Travelnet"] = new TravelnetOverlay(wsChannel, layerMgr); - overlays["Bones"] = new BonesOverlay(wsChannel, layerMgr); + + if (cfg.mapobjects.bones) { + overlays["Bones"] = new BonesOverlay(wsChannel, layerMgr); + } + overlays["Digilines LCD"] = new LcdOverlay(wsChannel, layerMgr); overlays["Digiterms"] = new DigitermOverlay(wsChannel, layerMgr); overlays["Lua Controller"] = new LuacontrollerOverlay(wsChannel, layerMgr); diff --git a/server/web/config.go b/server/web/config.go index 7d1f895..b9323df 100644 --- a/server/web/config.go +++ b/server/web/config.go @@ -9,7 +9,8 @@ import ( //Public facing config type PublicConfig struct { - Layers []layer.Layer `json:"layers"` + Layers []layer.Layer `json:"layers"` + MapObjects *app.MapObjectConfig `json:"mapobjects"` } type ConfigHandler struct { @@ -21,6 +22,7 @@ func (h *ConfigHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request) { webcfg := PublicConfig{} webcfg.Layers = h.ctx.Config.Layers + webcfg.MapObjects = h.ctx.Config.MapObjects json.NewEncoder(resp).Encode(webcfg) }