From 7e4fe40a5ff6b3dfbb14b9ac012959e5d60c8f3f Mon Sep 17 00:00:00 2001 From: Peter Sykora Date: Sat, 13 Oct 2018 22:56:07 +0200 Subject: [PATCH] [impl] Add temporary service screen to generate command to create new license --- package-lock.json | 5 +++++ package.json | 1 + src/routes/index.js | 15 +++++++++++++++ 3 files changed, 21 insertions(+) diff --git a/package-lock.json b/package-lock.json index 4481b73..f4b5fe4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3641,6 +3641,11 @@ "platform": "1.3.5" } }, + "hi-base32": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/hi-base32/-/hi-base32-0.5.0.tgz", + "integrity": "sha512-DDRmxSyoYuvjUb9EnXdoiMChBZ7ZcUVJsK5Frd3kqMhuBxvmZdnBeynAVfj7/ECbn++CekcoprvC/rprHPAtow==" + }, "hide-powered-by": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hide-powered-by/-/hide-powered-by-1.0.0.tgz", diff --git a/package.json b/package.json index 7a89a21..42de15d 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "date-fns": "^1.29.0", "dotenv": "^5.0.1", "es6-denodeify": "^0.1.5", + "hi-base32": "^0.5.0", "http-shutdown": "^1.2.0", "humps": "^2.0.1", "join-js": "^1.0.0", diff --git a/src/routes/index.js b/src/routes/index.js index 5182019..2759150 100644 --- a/src/routes/index.js +++ b/src/routes/index.js @@ -15,4 +15,19 @@ backend.use(login) router.use('/api', api.routes()) router.use('/backend', backend.routes()) +const base32 = require('hi-base32') +const crypto = require('crypto') +router.get('/temp/generate-new-license', async function(ctx) { + const licenseNum = base32.encode(crypto.randomBytes(15)) + const licenseNumNice = licenseNum.match(/.{4}/g).join('-') + ctx.body = '' + + `License for client:
${licenseNumNice}
` + + 'SQL command to insert license into database with 2 licensed modules ccengine (windows app) and cndata (CN data):
' +
+               `Insert Into License (productId, licenseNum, customerId) Values ('coc', '${licenseNum}', '123456');\n` +
+               `Insert Into LicensedModule (productId, licenseNum, moduleId) Values ('coc', '${licenseNum}', 'ccengine');\n` +
+               `Insert Into LicensedModule (productId, licenseNum, moduleId) Values ('coc', '${licenseNum}', 'cndata');\n` +
+               '
' + + '' +}); + module.exports = router