refactor: move fetchCurrentConfigVersion() to settings loader
This commit is contained in:
parent
d3d4042d97
commit
bb440eedd6
4 changed files with 20 additions and 24 deletions
|
|
@ -3,6 +3,7 @@ const nmd = require('nano-markdown')
|
|||
|
||||
const plugins = require('../plugins')
|
||||
const configManager = require('../new-config-manager')
|
||||
const settingsLoader = require('../new-settings-loader')
|
||||
const { batchGetCustomInfoRequest, getCustomInfoRequests } = require('../new-admin/services/customInfoRequests')
|
||||
const state = require('../middlewares/state')
|
||||
const { getMachine } = require('../machine-loader')
|
||||
|
|
@ -323,8 +324,7 @@ const terms = (parent, { currentConfigVersion, currentHash }, { deviceId, settin
|
|||
const isHashNew = hash !== currentHash
|
||||
const text = isHashNew ? latestTerms.text : null
|
||||
|
||||
return plugins(settings, deviceId)
|
||||
.fetchCurrentConfigVersion()
|
||||
return settingsLoader.fetchCurrentConfigVersion()
|
||||
.catch(() => null)
|
||||
.then(configVersion => isHashNew || _.isNil(currentConfigVersion) || currentConfigVersion < configVersion)
|
||||
.then(isVersionNew => isVersionNew ? _.omit(['text'], latestTerms) : null)
|
||||
|
|
|
|||
|
|
@ -228,6 +228,15 @@ function load (versionId) {
|
|||
}))
|
||||
}
|
||||
|
||||
const fetchCurrentConfigVersion = () => {
|
||||
const sql = `SELECT id FROM user_config
|
||||
WHERE type = 'config'
|
||||
AND valid
|
||||
ORDER BY id DESC
|
||||
LIMIT 1`
|
||||
return db.one(sql).then(row => row.id)
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
saveConfig,
|
||||
migrationSaveConfig,
|
||||
|
|
@ -238,5 +247,6 @@ module.exports = {
|
|||
loadLatestConfig,
|
||||
loadLatestConfigOrNone,
|
||||
load,
|
||||
removeFromConfig
|
||||
removeFromConfig,
|
||||
fetchCurrentConfigVersion,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ const logger = require('./logger')
|
|||
const logs = require('./logs')
|
||||
const T = require('./time')
|
||||
const configManager = require('./new-config-manager')
|
||||
const settingsLoader = require('./new-settings-loader')
|
||||
const ticker = require('./ticker')
|
||||
const wallet = require('./wallet')
|
||||
const walletScoring = require('./wallet-scoring')
|
||||
|
|
@ -237,15 +238,6 @@ function plugins (settings, deviceId) {
|
|||
.then(([cassettes, recyclers]) => ({ cassettes: cassettes.cassettes, recyclers: recyclers.recyclers }))
|
||||
}
|
||||
|
||||
function fetchCurrentConfigVersion () {
|
||||
const sql = `SELECT id FROM user_config
|
||||
WHERE type = 'config'
|
||||
AND valid
|
||||
ORDER BY id DESC
|
||||
LIMIT 1`
|
||||
return db.one(sql).then(row => row.id)
|
||||
}
|
||||
|
||||
function mapCoinSettings (coinParams) {
|
||||
const [ cryptoCode, cryptoNetwork ] = coinParams
|
||||
const commissions = configManager.getCommissions(cryptoCode, deviceId, settings.config)
|
||||
|
|
@ -287,7 +279,7 @@ function plugins (settings, deviceId) {
|
|||
return Promise.all([
|
||||
buildAvailableCassettes(),
|
||||
buildAvailableRecyclers(),
|
||||
fetchCurrentConfigVersion(),
|
||||
settingsLoader.fetchCurrentConfigVersion(),
|
||||
millisecondsToMinutes(getTimezoneOffset(localeConfig.timezone)),
|
||||
loyalty.getNumberOfAvailablePromoCodes(),
|
||||
Promise.all(supportsBatchingPromise),
|
||||
|
|
@ -1030,7 +1022,6 @@ function plugins (settings, deviceId) {
|
|||
sell,
|
||||
getNotificationConfig,
|
||||
notifyOperator,
|
||||
fetchCurrentConfigVersion,
|
||||
pruneMachinesHeartbeat,
|
||||
rateAddress,
|
||||
isWalletScoringEnabled,
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ const nmd = require('nano-markdown')
|
|||
const router = express.Router()
|
||||
|
||||
const configManager = require('../new-config-manager')
|
||||
const plugins = require('../plugins')
|
||||
const settingsLoader = require('../new-settings-loader')
|
||||
|
||||
const createTerms = terms => (terms.active && terms.text) ? ({
|
||||
delay: terms.delay,
|
||||
|
|
@ -18,15 +18,10 @@ const createTerms = terms => (terms.active && terms.text) ? ({
|
|||
|
||||
function getTermsConditions (req, res, next) {
|
||||
const deviceId = req.deviceId
|
||||
const settings = req.settings
|
||||
|
||||
const terms = configManager.getTermsConditions(settings.config)
|
||||
|
||||
const pi = plugins(settings, deviceId)
|
||||
|
||||
return pi.fetchCurrentConfigVersion().then(version => {
|
||||
return res.json({ terms: createTerms(terms), version })
|
||||
})
|
||||
const { config } = req.settings
|
||||
const terms = configManager.getTermsConditions(config)
|
||||
return settingsLoader.fetchCurrentConfigVersion()
|
||||
.then(version => res.json({ terms: createTerms(terms), version }))
|
||||
.catch(next)
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue