Don't redirect to login page if we have no account

This commit is contained in:
N Pex 2023-01-09 14:21:08 +00:00
parent e0b2dcbbda
commit 192707d8f0
3 changed files with 119 additions and 72 deletions

View file

@ -1,5 +1,10 @@
import axios from 'axios';
import * as ContentHelpers from "matrix-js-sdk/lib/content-helpers";
import dataUriToBuffer from "data-uri-to-buffer";
import ImageResize from "image-resize";
const sizeOf = require("image-size");
var dayjs = require('dayjs');
var sha256 = require('js-sha256').sha256;
var aesjs = require('aes-js');
@ -597,6 +602,60 @@ class Util {
});
}
loadAvatarFromFile(event, onLoad) {
if (event.target.files && event.target.files[0]) {
var reader = new FileReader();
reader.onload = (e) => {
const file = event.target.files[0];
if (file.type.startsWith("image/")) {
try {
var image = e.target.result;
var dimens = sizeOf(dataUriToBuffer(e.target.result));
// Need to resize?
const w = dimens.width;
const h = dimens.height;
if (w > 640 || h > 640) {
var aspect = w / h;
var newWidth = parseInt((w > h ? 640 : 640 * aspect).toFixed());
var newHeight = parseInt(
(w > h ? 640 / aspect : 640).toFixed()
);
var imageResize = new ImageResize({
format: "png",
width: newWidth,
height: newHeight,
outputType: "blob",
});
imageResize
.play(event.target)
.then((img) => {
var resizedImageFile = new File([img], file.name, {
type: img.type,
lastModified: Date.now(),
});
var reader2 = new FileReader();
reader2.onload = (e) => {
onLoad(e.target.result);
};
reader2.readAsDataURL(resizedImageFile);
})
.catch((err) => {
console.error("Resize failed:", err);
});
} else {
onLoad(image);
}
} catch (error) {
console.error("Failed to get image dimensions: " + error);
}
}
};
reader.readAsDataURL(event.target.files[0]);
}
}
/**
* Return number of whole days between the timestamps, at end of that day.
* @param {*} ts1