aboutsummaryrefslogtreecommitdiff
path: root/node_modules/rndm/index.js
diff options
context:
space:
mode:
authorHumairAK <humair88@hotmail.com>2016-07-21 06:24:24 +0000
committerHumairAK <humair88@hotmail.com>2016-07-21 06:24:24 +0000
commit2549ee68e435b77e7e07d3ea95363268cbfe9164 (patch)
tree8f48f6447a4377f1bc15ae7d73dbab3337044720 /node_modules/rndm/index.js
parentd694c1a73f77def42c17b58027f046bf9e1af809 (diff)
Added other dependencies for authentication, made minor adjustments to index.js, added templating for exams, will remove dependencie modules later, keep for now
Diffstat (limited to 'node_modules/rndm/index.js')
-rw-r--r--node_modules/rndm/index.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/node_modules/rndm/index.js b/node_modules/rndm/index.js
new file mode 100644
index 0000000..24b0ebb
--- /dev/null
+++ b/node_modules/rndm/index.js
@@ -0,0 +1,25 @@
+
+var assert = require('assert')
+
+var base62 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
+var base36 = 'abcdefghijklmnopqrstuvwxyz0123456789'
+var base10 = '0123456789'
+
+exports = module.exports = create(base62)
+exports.base62 = exports
+exports.base36 = create(base36)
+exports.base10 = create(base10)
+
+exports.create = create
+
+function create(chars) {
+ assert(typeof chars === 'string', 'the list of characters must be a string!')
+ var length = Buffer.byteLength(chars)
+ return function rndm(len) {
+ len = len || 10
+ assert(typeof len === 'number' && len >= 0, 'the length of the random string must be a number!')
+ var salt = ''
+ for (var i = 0; i < len; i++) salt += chars[Math.floor(length * Math.random())]
+ return salt
+ }
+}