diff --git a/activations.js b/activations.js index 43218eb..8b9cbdc 100644 --- a/activations.js +++ b/activations.js @@ -13,7 +13,13 @@ router.get('/:callsign', (req, res) => { noCache: true }; - db.getDb().collection('activators').findOne({callsign: req.params.callsign}, (err, activator) => { + let query = {callsign: req.params.callsign} + if (/^[0-9]+$/.test(req.params.callsign)) { + // User ID + query = {userId: req.params.callsign} + } + + db.getDb().collection('activators').findOne(query, (err, activator) => { if (err) { res.status(500).end(); return; diff --git a/server.js b/server.js index 5ac3b30..54a720f 100644 --- a/server.js +++ b/server.js @@ -219,7 +219,13 @@ app.get('/activators/search', (req, res) => { }); app.get('/activators/:callsign', (req, res) => { - db.getDb().collection('activators').findOne({callsign: req.params.callsign}, {projection: {'_id': false}}, (err, activator) => { + let query = {callsign: req.params.callsign} + if (/^[0-9]+$/.test(req.params.callsign)) { + // User ID + query = {userId: parseInt(req.params.callsign)} + } + + db.getDb().collection('activators').findOne(query, {projection: {'_id': false}}, (err, activator) => { if (err) { console.error(err); res.status(500).end();