Files
e-cosplay/assets/class/SecurityWall.js

41 lines
1.3 KiB
JavaScript
Raw Normal View History

export class SecurityWall extends HTMLElement {
connectedCallback() {
this.render();
// Ecoute globale pour Alt+P
window.addEventListener('keydown', (event) => {
if (event.altKey && event.key.toLowerCase() === 'p') {
this.toggleWall();
}
});
}
render() {
const isEnabled = localStorage.getItem('mainframe-wallsecurity') === 'true';
if (!isEnabled) {
// Retirer si déjà présent
const existing = document.querySelector('security-wall-item');
if (existing) existing.remove();
return;
}
// Ajouter seulement si pas déjà présent
if (!document.querySelector('security-wall-item')) {
let wall = document.createElement('security-wall-item');
wall.innerHTML = `
<div class="content">
<h2><warn>/!\\ </warn> - Protection MAINFRAME - <warn>/!\\ </warn></h2>
<span>Filtre de confidentialité activée</span>
</div>
`;
document.body.appendChild(wall);
}
}
toggleWall() {
const current = localStorage.getItem('mainframe-wallsecurity') === 'true';
localStorage.setItem('mainframe-wallsecurity', current ? 'false' : 'true');
this.render();
}
}