kuro223's picture
uuz
7d3a75b
raw
history blame
2.02 kB
// Vérifier si le navigateur prend en charge les Service Workers
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/static/js/service-worker.js')
.then(function(registration) {
console.log('Service Worker enregistré avec succès:', registration.scope);
})
.catch(function(error) {
console.log('Échec de l\'enregistrement du Service Worker:', error);
});
});
}
// Gestion des événements d'installation de PWA
let deferredPrompt;
window.addEventListener('beforeinstallprompt', (e) => {
// Empêcher Chrome 67 et versions ultérieures d'afficher automatiquement l'invite
e.preventDefault();
// Stocker l'événement pour l'utiliser plus tard
deferredPrompt = e;
// Vous pouvez ajouter ici un bouton ou une bannière pour suggérer l'installation
// Par exemple :
/*
const installBanner = document.createElement('div');
installBanner.id = 'install-banner';
installBanner.innerHTML = `
<p>Installez Mariam AI sur votre appareil!</p>
<button id="install-button">Installer</button>
<button id="close-banner">✕</button>
`;
document.body.appendChild(installBanner);
document.getElementById('install-button').addEventListener('click', (e) => {
// Afficher l'invite d'installation
deferredPrompt.prompt();
// Attendre que l'utilisateur réponde à l'invite
deferredPrompt.userChoice.then((choiceResult) => {
if (choiceResult.outcome === 'accepted') {
console.log('L\'utilisateur a accepté l\'installation');
} else {
console.log('L\'utilisateur a refusé l\'installation');
}
// Réinitialiser la variable car on ne peut utiliser l'événement qu'une fois
deferredPrompt = null;
// Cacher la bannière
installBanner.style.display = 'none';
});
});
document.getElementById('close-banner').addEventListener('click', (e) => {
installBanner.style.display = 'none';
});
*/
});