added settings page and enabled disabling registration and admin user management

This commit is contained in:
slynn1324 2021-02-01 16:15:01 -06:00
parent cc0a95f8f3
commit deaa8ded34
14 changed files with 658 additions and 16 deletions

48
utils/change-password.js Normal file
View file

@ -0,0 +1,48 @@
const crypto = require('crypto');
const readline = require("readline");
const writable = require('stream').Writable;
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
terminal: true
});
rl.stdoutMuted = true;
rl.query = "password: ";
rl._writeToOutput = function _writeToOutput(stringToWrite) {
if ( stringToWrite == rl.query ){
rl.output.write(stringToWrite);
}
// if (rl.stdoutMuted)
// // rl.output.write("");
// // rl.output.write("\x1B[2K\x1B[200D"+rl.query+"["+((rl.line.length%2==1)?"=-":"-=")+"]");
// else
// rl.output.write(stringToWrite);
};
async function deriveKey(salt, pw){
return new Promise( (resolve, reject) => {
crypto.scrypt(pw, salt, 64, (err, key) => {
resolve(key.toString('hex'));
});
});
}
function createSalt(){
return crypto.randomBytes(16).toString('hex');
}
// let username = req.body.username;
// let salt = createSalt();
// let key = await deriveKey(salt, req.body.password);
rl.question(rl.query, async (password) => {
rl.close();
console.log(password);
let salt = createSalt();
let key = await deriveKey(salt, password);
console.log("salt: " + salt);
console.log("key: " + key);
});

16
utils/image-test.js Normal file
View file

@ -0,0 +1,16 @@
const sharp = require("sharp");
async function run(){
let original = await sharp("/Users/slynn1324/Desktop/IMG_5166.HEIC");
console.log(await original.metadata());
let jpg = await original.toFormat("jpg").toBuffer();
jpg = await sharp(jpg);
console.log(await jpg.metadata() );
}
run();

3
utils/rotate-key.js Normal file
View file

@ -0,0 +1,3 @@
const crypto = require('crypto');
console.log("cookieKey: " + crypto.randomBytes(32).toString('hex'));