diff --git a/lib/postgresql_interface.js b/lib/postgresql_interface.js index a676281a..d80be7b9 100644 --- a/lib/postgresql_interface.js +++ b/lib/postgresql_interface.js @@ -489,16 +489,16 @@ function insertDispense (client, session, tx, cartridges, transactionId, cb) { exports.addIncomingPhone = function addIncomingPhone (session, tx, notified, cb) { var sql = 'UPDATE transactions SET phone=$1, notified=$2 ' + - 'WHERE incoming=$3 AND device_fingerprint=$4 AND session_id=$5' + 'WHERE incoming=$3 AND device_fingerprint=$4 AND session_id=$5 AND phone IS NULL' return new Promise((resolve, reject) => { connect(function (cerr, client, done) { if (cerr) return reject(cerr) var values = [tx.phone, notified, true, session.fingerprint, tx.sessionId] - query(client, sql, values, function (err) { + query(client, sql, values, function (err, results) { done(err) if (err) return reject(err) - resolve() + resolve({noPhone: results.rowCount === 0}) }) }) }) diff --git a/lib/routes.js b/lib/routes.js index f95217fb..5f752613 100644 --- a/lib/routes.js +++ b/lib/routes.js @@ -240,7 +240,7 @@ function phoneCode (req, res) { function updatePhone (req, res) { const notified = req.query.notified === 'true' return plugins.updatePhone(session(req), req.body, notified) - .then(code => res.json(200)) + .then(res => res.json(res)) .catch(err => { logger.error(err) res.sendStatus(500)