Get username for warning chat

This commit is contained in:
Ajay Ramachandran 2021-07-29 19:29:34 -04:00
parent c84a951acc
commit 839dd4613c
2 changed files with 10 additions and 7 deletions

View file

@ -31,8 +31,12 @@ export function openChat(config: ChatConfig): void {
}
export async function openWarningChat(warningMessage: string): Promise<void> {
const userNameData = await utils.asyncRequestToServer("GET", "/api/getUsername?userID=" + Config.config.userID);
const userName = userNameData.ok ? JSON.parse(userNameData.responseText).userName : "";
const publicUserID = await utils.getHash(Config.config.userID);
openChat({
displayName: await utils.getHash(Config.config.userID),
displayName: `${userName ? `${userName} | `: ``}${userName !== publicUserID ? publicUserID : ``}`,
composerInitialValue: `I got a warning and want to know what I need to do to improve. ` +
`Warning reason: ${warningMessage.match(/Warning reason: '(.+)'/)[1]}`,
customDescription: chrome.i18n.getMessage("warningChatInfo")

View file

@ -492,14 +492,13 @@ export default class Utils {
async getHash(value: string, times = 5000): Promise<string> {
if (times <= 0) return "";
let hashBuffer = new TextEncoder().encode(value).buffer;
let hashHex = value;
for (let i = 0; i < times; i++) {
hashBuffer = await crypto.subtle.digest('SHA-256', hashBuffer);
}
const hashBuffer = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(hashHex).buffer);
const hashArray = Array.from(new Uint8Array(hashBuffer));
const hashHex = hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
const hashArray = Array.from(new Uint8Array(hashBuffer));
hashHex = hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
}
return hashHex;
}