|
|
|
@ -169,16 +169,18 @@ if (config.privKeyAndCertFiles) {
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var admins = [];
|
|
|
|
|
try {
|
|
|
|
|
admins = (config.adminKeys || []).map(function (k) {
|
|
|
|
|
k = k.replace(/\/+$/, '');
|
|
|
|
|
var s = k.split('/');
|
|
|
|
|
return s[s.length-1].replace(/-/g, '/');
|
|
|
|
|
});
|
|
|
|
|
} catch (e) { console.error("Can't parse admin keys"); }
|
|
|
|
|
|
|
|
|
|
app.get('/api/config', function(req, res){
|
|
|
|
|
// TODO precompute any data that isn't dynamic to save some CPU time
|
|
|
|
|
var host = req.headers.host.replace(/\:[0-9]+/, '');
|
|
|
|
|
var admins = [];
|
|
|
|
|
try {
|
|
|
|
|
admins = (config.adminKeys || []).map(function (k) {
|
|
|
|
|
k = k.replace(/\/+$/, '');
|
|
|
|
|
var s = k.split('/');
|
|
|
|
|
return s[s.length-1].replace(/-/g, '/');
|
|
|
|
|
});
|
|
|
|
|
} catch (e) { console.error("Can't parse admin keys"); }
|
|
|
|
|
res.setHeader('Content-Type', 'text/javascript');
|
|
|
|
|
res.send('define(function(){\n' + [
|
|
|
|
|
'var obj = ' + JSON.stringify({
|
|
|
|
|