Modernize. All core JS is modules. var => let.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4155 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2023-01-28 22:44:45 +00:00
parent 7091b6e6a5
commit c692b1b1f8
5 changed files with 137 additions and 118 deletions

View File

@ -1,8 +1,8 @@
import * as core from './core.js';
import * as form from './form.js';
var gTokens = {};
var gDatabase = new Database("auth");
let gTokens = {};
let gDatabase = new Database("auth");
const kRefreshInterval = 1 * 7 * 24 * 60 * 60 * 1000;
@ -75,7 +75,7 @@ function verifyPassword(password, hash) {
}
function hashPassword(password) {
var salt = bCrypt.gensalt(12);
let salt = bCrypt.gensalt(12);
return bCrypt.hashpw(password, salt);
}
@ -99,14 +99,14 @@ function makeAdministrator(name) {
}
function getCookies(headers) {
var cookies = {};
let cookies = {};
if (headers.cookie) {
var parts = headers.cookie.split(/,|;/);
for (var i in parts) {
var equals = parts[i].indexOf("=");
var name = parts[i].substring(0, equals).trim();
var value = parts[i].substring(equals + 1).trim();
let parts = headers.cookie.split(/,|;/);
for (let i in parts) {
let equals = parts[i].indexOf("=");
let name = parts[i].substring(0, equals).trim();
let value = parts[i].substring(equals + 1).trim();
cookies[name] = value;
}
}
@ -115,18 +115,18 @@ function getCookies(headers) {
}
function handler(request, response) {
var session = getCookies(request.headers).session;
let session = getCookies(request.headers).session;
if (request.uri == "/login") {
var sessionIsNew = false;
var loginError;
let sessionIsNew = false;
let loginError;
var formData = form.decodeForm(request.query);
let formData = form.decodeForm(request.query);
if (request.method == "POST" || formData.submit) {
sessionIsNew = true;
formData = form.decodeForm(utf8Decode(request.body), formData);
if (formData.submit == "Login") {
var account = gDatabase.get("user:" + formData.name);
let account = gDatabase.get("user:" + formData.name);
account = account ? JSON.parse(account) : account;
if (formData.register == "1") {
if (!account &&
@ -171,15 +171,15 @@ function handler(request, response) {
}
}
var cookie = `session=${session}; path=/; Max-Age=${kRefreshInterval}; Secure; SameSite=Strict`;
var entry = readSession(session);
let cookie = `session=${session}; path=/; Max-Age=${kRefreshInterval}; Secure; SameSite=Strict`;
let entry = readSession(session);
if (entry && formData.return) {
response.writeHead(303, {"Location": formData.return, "Set-Cookie": cookie});
response.end();
} else {
File.readFile("core/auth.html").then(function(data) {
var html = utf8Decode(data);
var contents = "";
let html = utf8Decode(data);
let contents = "";
if (entry) {
if (sessionIsNew) {
@ -216,7 +216,7 @@ function handler(request, response) {
contents += '</div>\n';
contents += '</form>';
}
var text = html.replace("<!--SESSION-->", contents);
let text = html.replace("<!--SESSION-->", contents);
response.writeHead(200, {"Content-Type": "text/html; charset=utf-8", "Set-Cookie": cookie, "Content-Length": text.length});
response.end(text);
}).catch(function(error) {
@ -234,8 +234,8 @@ function handler(request, response) {
}
function getPermissions(session) {
var permissions;
var entry = readSession(session);
let permissions;
let entry = readSession(session);
if (entry) {
permissions = getPermissionsForUser(entry.name);
permissions.authenticated = entry.name !== "guest";
@ -244,9 +244,9 @@ function getPermissions(session) {
}
function getPermissionsForUser(userName) {
var permissions = {};
let permissions = {};
if (core.globalSettings && core.globalSettings.permissions && core.globalSettings.permissions[userName]) {
for (var i in core.globalSettings.permissions[userName]) {
for (let i in core.globalSettings.permissions[userName]) {
permissions[core.globalSettings.permissions[userName][i]] = true;
}
}
@ -254,9 +254,9 @@ function getPermissionsForUser(userName) {
}
function query(headers) {
var session = getCookies(headers).session;
var entry;
var autologin = tildefriends.args.autologin;
let session = getCookies(headers).session;
let entry;
let autologin = tildefriends.args.autologin;
if (entry = autologin ? {name: autologin} : readSession(session)) {
return {
session: entry,