modifprivatri wco and page
This commit is contained in:
44
wco/privatri_mathieu/createThread.js
Normal file
44
wco/privatri_mathieu/createThread.js
Normal file
@@ -0,0 +1,44 @@
|
||||
import apx from "./apx.js";
|
||||
|
||||
const autoDeletionBtnElArray = document.querySelectorAll("li.autoDeletionBtn");
|
||||
|
||||
autoDeletionBtnElArray.forEach(btn => {
|
||||
btn.addEventListener("click", () => {
|
||||
autoDeletionBtnElArray.forEach(btn => btn.classList.remove("bg-base-200"));
|
||||
btn.classList.add("bg-base-200");
|
||||
});
|
||||
});
|
||||
|
||||
document.querySelector("#createThreadBtn").addEventListener("click", async () => {
|
||||
const { publicKey, privateKey } = await apx.crypto.genKey();
|
||||
|
||||
const messageObj = await (async (publicKey) => {
|
||||
const uuid = crypto.randomUUID();
|
||||
const timestamp = Date.now();
|
||||
const alias = await apx.crypto.encryptMessage(JSON.parse(localStorage.getItem("apx")).data.headers.xalias, publicKey);
|
||||
|
||||
return {
|
||||
privatriid: `${uuid}_${timestamp}`,
|
||||
thread: uuid,
|
||||
timestamp: timestamp,
|
||||
owner: alias,
|
||||
title: await apx.crypto.encryptMessage(document.querySelector("#threadNameInput").value, publicKey),
|
||||
sender_alias: alias,
|
||||
publicKey: publicKey,
|
||||
aliases: [
|
||||
alias
|
||||
],
|
||||
message: await apx.crypto.encryptMessage(document.querySelector("#threadDescriptionInput").value, publicKey),
|
||||
dt_autodestruction: (() => {
|
||||
const selectedBtn = Array.from(autoDeletionBtnElArray).find(btn => btn.classList.contains("bg-base-200"));
|
||||
return parseInt(selectedBtn ? selectedBtn.getAttribute("data-auto-deletion") : 0, 10);
|
||||
})(),
|
||||
urgencydeletion: document.querySelector('input[type="checkbox"].toggle').checked
|
||||
};
|
||||
})(publicKey);
|
||||
|
||||
// Faire un post sur l'endpoint /privatri
|
||||
|
||||
await apx.indexedDB.set("privatri", "threads", { uuid: messageObj.thread, privateKey: privateKey });
|
||||
await apx.indexedDB.set("privatri", "messages", messageObj);
|
||||
});
|
Reference in New Issue
Block a user