refactor(idVerifier): idVerifier load, config and logic moved to plugins.js

This commit is contained in:
Damian Mee 2014-08-20 23:05:07 +02:00
parent 359dfbf1a9
commit 1d3a8d403d
2 changed files with 34 additions and 11 deletions

View file

@ -14,9 +14,10 @@ var db = null;
var tickerPlugin = null; var tickerPlugin = null;
var traderPlugin = null; var traderPlugin = null;
var walletPlugin = null; var walletPlugin = null;
var idVerifierPlugin = null;
var cachedConfig = null; var cachedConfig = null;
var deviceCurrency = 'USD'; // Can 'USD' it be set as default? var deviceCurrency = 'USD'; // Can 'USD' be set as default?
var lastBalances = null; var lastBalances = null;
var lastRates = {}; var lastRates = {};
@ -127,6 +128,17 @@ exports.configure = function configure(config) {
else traderPlugin = loadPlugin(traderName, traderConfig); else traderPlugin = loadPlugin(traderName, traderConfig);
} }
// [optional] ID Verifier
var verifierName = plugins.current.idVerifier;
if (verifierName) { // idVerifierPlugin may be disabled
var verifierConfig = plugins.settings[verifierName];
if (idVerifierPlugin) idVerifierPlugin.config(verifierConfig);
else loadPlugin(verifierName, verifierConfig);
}
cachedConfig = config; cachedConfig = config;
pollBalance(); pollBalance();
@ -376,3 +388,14 @@ function executeTrades() {
if (err) logger.error(err); if (err) logger.error(err);
}); });
}; };
/*
* ID Verifier functions
*/
exports.verifyUser = function verifyUser(rawData, callback) {
idVerifierPlugin.verifyUser(rawData, callback);
};
exports.verifyTransaction = function verifyTransaction(rawData, callback) {
idVerifier.verifyTransaction(rawData, callback);
};

View file

@ -2,7 +2,6 @@
var logger = require('./logger'); var logger = require('./logger');
var idVerifier = null;
var mock = false; var mock = false;
var plugins; var plugins;
@ -75,11 +74,14 @@ function deviceEvent(req, res) {
function verifyUser(req, res) { function verifyUser(req, res) {
if (mock) return res.json({success: true}); if (mock) return res.json({success: true});
idVerifier.verifyUser(req.body, function (err, idResult) { plugins.verifyUser(req.body, function (err, idResult) {
if (err) { if (err) {
logger.error(err); logger.error(err);
return res.json({err: 'Verification failed'}); return res.json({
err: 'Verification failed'
});
} }
res.json(idResult); res.json(idResult);
}); });
} }
@ -87,11 +89,14 @@ function verifyUser(req, res) {
function verifyTransaction(req, res) { function verifyTransaction(req, res) {
if (mock) return res.json({success: true}); if (mock) return res.json({success: true});
idVerifier.verifyTransaction(req.body, function (err, idResult) { plugins.verifyTransaction(req.body, function (err, idResult) {
if (err) { if (err) {
logger.error(err); logger.error(err);
return res.json({err: 'Verification failed'}); return res.json({
err: 'Verification failed'
});
} }
res.json(idResult); res.json(idResult);
}); });
} }
@ -132,11 +137,6 @@ function init(localConfig) {
var authMiddleware = localConfig.authMiddleware; var authMiddleware = localConfig.authMiddleware;
var app = localConfig.app; var app = localConfig.app;
config.readExchangesConfig(function (err, res) {
var idVerifyConfig = res.exchanges.plugins.settings.identitymind;
idVerifier = require('lamassu-identitymind');
idVerifier.init(idVerifyConfig);
});
app.get('/poll', authMiddleware, poll); app.get('/poll', authMiddleware, poll);
app.post('/send', authMiddleware, send); app.post('/send', authMiddleware, send);