diff --git a/Gruntfile.js b/Gruntfile.js
index ca5d705b..3d71bb5b 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -133,7 +133,7 @@ module.exports = function(grunt) {
// dependencies
'public/js/lib/codemirror/mode/cartocss/jquery-2.1.1.min.js',
- 'public/js/lib/lodash/lodash.min.js',
+ 'public/js/lib/lodash/lodash-4.16.4.js',
'public/js/lib/async/async.js',
// leaflet + mapbox
@@ -268,6 +268,7 @@ module.exports = function(grunt) {
'public/js/src/controls/control.animator.js',
'public/js/src/ext/popup.chart.js',
'public/js/src/controls/control.chart.js',
+ 'public/js/src/controls/control.wms.js',
// Models
@@ -281,6 +282,7 @@ module.exports = function(grunt) {
'public/js/src/models/model.layer.providers.js',
'public/js/src/models/model.layer.topojson.js',
'public/js/src/models/model.layer.geojson.js',
+ 'public/js/src/models/model.layer.wms.js',
'public/js/src/models/model.file.js',
// Analytics
diff --git a/api/api.analytics.js b/api/api.analytics.js
index 6cb810bf..77ed2bcf 100644
--- a/api/api.analytics.js
+++ b/api/api.analytics.js
@@ -11,30 +11,30 @@ var Role = require('../models/role');
var Group = require('../models/group');
// utils
-var _ = require('lodash');
-var fs = require('fs-extra');
-var gm = require('gm');
-var kue = require('kue');
-var fss = require("q-io/fs");
-var srs = require('srs');
-var zlib = require('zlib');
-var uuid = require('node-uuid');
-var util = require('util');
-var utf8 = require("utf8");
-var mime = require("mime");
-var exec = require('child_process').exec;
-var dive = require('dive');
-var async = require('async');
-var carto = require('carto');
+var _ = require('lodash');
+var fs = require('fs-extra');
+var gm = require('gm');
+var kue = require('kue');
+var fss = require("q-io/fs");
+var srs = require('srs');
+var zlib = require('zlib');
+var uuid = require('node-uuid');
+var util = require('util');
+var utf8 = require("utf8");
+var mime = require("mime");
+var exec = require('child_process').exec;
+var dive = require('dive');
+var async = require('async');
+var carto = require('carto');
var nodeSlack = require('../tools/slack');
var crypto = require('crypto');
-var fspath = require('path');
+var fspath = require('path');
var request = require('request');
var ogr2ogr = require('ogr2ogr');
var nodepath = require('path');
var formidable = require('formidable');
var nodemailer = require('nodemailer');
-var ua = require('universal-analytics');
+var ua = require('universal-analytics');
var uploadProgress = require('node-upload-progress');
var mapnikOmnivore = require('mapnik-omnivore');
@@ -44,6 +44,40 @@ var api = module.parent.exports;
// exports
module.exports = api.analytics = {
+
+
+
+
+
+ event : function (req) {
+
+ console.log('analytics event!', req);
+
+ var data = req.data;
+
+ console.log('analytics data:', data);
+
+ },
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
downloadedDataset : function (options) {
diff --git a/api/api.layer.js b/api/api.layer.js
index 9c16376a..3a26da62 100644
--- a/api/api.layer.js
+++ b/api/api.layer.js
@@ -879,9 +879,12 @@ module.exports = api.layer = {
layer.save(function (err, savedLayer) {
if (err) return callback(err);
+ console.log('savedLayer', savedLayer);
if (options.projectUuid) {
+ console.log('got projectUuid', options.projectUuid);
return api.layer.addToProject(layer._id, options.projectUuid, function (err) {
+ console.log('added to project!', err);
callback && callback(err, savedLayer);
});
}
@@ -908,7 +911,17 @@ module.exports = api.layer = {
callback && callback(err);
});
});
- }
+ },
+
+
+ getWMSLayers : function (req, res) {
+
+ console.log('getWMSLayers', req.body);
+
+
+ res.send({wms : 'debug'});
+
+ },
};
// systemapic hack
diff --git a/models/layer.js b/models/layer.js
index 735253c4..86aa14bf 100644
--- a/models/layer.js
+++ b/models/layer.js
@@ -47,6 +47,11 @@ var layerSchema = mongoose.Schema({
norkart : String,
google : String,
cube : String,
+ wms : {
+ source : String,
+ layers : [String],
+ meta : String,
+ },
postgis : {
sql : String,
diff --git a/public b/public
index 4d4dcac0..897acf04 160000
--- a/public
+++ b/public
@@ -1 +1 @@
-Subproject commit 4d4dcac0cb5ad56cb53a345a8430a839e49405ca
+Subproject commit 897acf04464dd175633948532c980f64841697ef
diff --git a/routes/routes.js b/routes/routes.js
index f2017ff3..adfab0d4 100644
--- a/routes/routes.js
+++ b/routes/routes.js
@@ -1102,6 +1102,12 @@ module.exports = function(app) {
app.post('/v2/layers/carto/custom', checkAccess, analyticsHandler, api.geo.cartoCustom, errorHandler);
+
+
+ // get list of wms layers
+ app.get('/v2/layers/wms', checkAccess, analyticsHandler, api.layer.getWMSLayers, errorHandler);
+
+
/**
* @api {post} /v2/data/download Download dataset from file
* @apiName Download dataset from file
diff --git a/routes/socket.routes.js b/routes/socket.routes.js
index fb91ffae..7668448f 100644
--- a/routes/socket.routes.js
+++ b/routes/socket.routes.js
@@ -66,9 +66,11 @@ module.exports = function(app) {
});
// get stats
- app.io.route('user_event', function (req) {
+ app.io.route('analytics', function (req) {
+
+ // api.socket.userEvent(req);
+ api.analytics.event(req);
- api.socket.userEvent(req);
});
// get stats
diff --git a/views/app.ejs b/views/app.ejs
index 727cff9b..ba8b59b7 100644
--- a/views/app.ejs
+++ b/views/app.ejs
@@ -129,7 +129,7 @@
-
+
@@ -145,7 +145,7 @@
-
+
@@ -263,6 +263,7 @@
+
@@ -275,6 +276,7 @@
+
@@ -310,6 +312,16 @@
+
+
+
+