summaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
authorLauri Ojansivu <x@xet7.org>2018-07-30 21:45:16 +0300
committerLauri Ojansivu <x@xet7.org>2018-07-30 21:45:16 +0300
commit064d125a1ca925e7ac9a14dba0b91b60dfc6afb4 (patch)
tree4f27ae8627038c9bf036becf8f30801dd25175d4 /models
parent2bb80956dd54aa6af0a56b863bc5d047305f8a8a (diff)
parent1cc8452752ad75649b8de42072dc6645cad4f83a (diff)
downloadwekan-064d125a1ca925e7ac9a14dba0b91b60dfc6afb4.tar.gz
wekan-064d125a1ca925e7ac9a14dba0b91b60dfc6afb4.tar.bz2
wekan-064d125a1ca925e7ac9a14dba0b91b60dfc6afb4.zip
Merge branch 'devel'
Diffstat (limited to 'models')
-rw-r--r--models/settings.js17
-rw-r--r--models/users.js13
2 files changed, 29 insertions, 1 deletions
diff --git a/models/settings.js b/models/settings.js
index 308d867d..3b9b4eae 100644
--- a/models/settings.js
+++ b/models/settings.js
@@ -96,6 +96,14 @@ if (Meteor.isServer) {
return (min + Math.round(rand * range));
}
+ function getEnvVar(name){
+ const value = process.env[name];
+ if (value){
+ return value;
+ }
+ throw new Meteor.Error(['var-not-exist', `The environment variable ${name} does not exist`]);
+ }
+
function sendInvitationEmail (_id){
const icode = InvitationCodes.findOne(_id);
const author = Users.findOne(Meteor.userId());
@@ -180,5 +188,14 @@ if (Meteor.isServer) {
email: user.emails[0].address,
};
},
+
+ getMatomoConf(){
+ return {
+ address: getEnvVar('MATOMO_ADDRESS'),
+ siteId: getEnvVar('MATOMO_SITE_ID'),
+ doNotTrack: process.env.MATOMO_DO_NOT_TRACK || false,
+ withUserName: process.env.MATOMO_WITH_USERNAME || false,
+ };
+ },
});
}
diff --git a/models/users.js b/models/users.js
index 9d859664..9b070c43 100644
--- a/models/users.js
+++ b/models/users.js
@@ -622,9 +622,20 @@ if (Meteor.isServer) {
});
}
-
// USERS REST API
if (Meteor.isServer) {
+ // Middleware which checks that API is enabled.
+ JsonRoutes.Middleware.use(function (req, res, next) {
+ const api = req.url.search('api');
+ if (api === 1 && process.env.WITH_API === 'true' || api === -1){
+ return next();
+ }
+ else {
+ res.writeHead(301, {Location: '/'});
+ return res.end();
+ }
+ });
+
JsonRoutes.add('GET', '/api/user', function(req, res) {
try {
Authentication.checkLoggedIn(req.userId);