correction des boutons "copier" dans la page de partage

This commit is contained in:
Esenjin 2025-01-15 16:41:43 +01:00
parent eebe3372bc
commit f8675a312b

View File

@ -92,7 +92,7 @@ ob_start(); ?>
id="share-url" id="share-url"
value="<?php echo Cyla::escape($share_url); ?>" value="<?php echo Cyla::escape($share_url); ?>"
readonly> readonly>
<button class="btn" onclick="copyToClipboard('share-url', 'Lien de partage copié !')"> <button class="btn" onclick="handleCopy('share-url', 'Lien de partage copié !')">
Copier Copier
</button> </button>
</div> </div>
@ -105,7 +105,7 @@ ob_start(); ?>
id="direct-url" id="direct-url"
value="<?php echo Cyla::escape($file_url); ?>" value="<?php echo Cyla::escape($file_url); ?>"
readonly> readonly>
<button class="btn" onclick="copyToClipboard('direct-url', 'Lien direct copié !')"> <button class="btn" onclick="handleCopy('direct-url', 'Lien direct copié !')">
Copier Copier
</button> </button>
</div> </div>
@ -126,7 +126,7 @@ ob_start(); ?>
} }
?>" ?>"
readonly> readonly>
<button class="btn" onclick="copyToClipboard('embed-code', 'Code d\'intégration copié !')"> <button class="btn" onclick="handleCopy('embed-code', 'Code d\'intégration copié !')">
Copier Copier
</button> </button>
</div> </div>
@ -261,13 +261,17 @@ ob_start(); ?>
</style> </style>
<script> <script>
// Fonction pour copier dans le presse-papier avec notification // Fonction pour gérer la copie
function copyToClipboard(elementId, message) { async function handleCopy(elementId, message) {
const element = document.getElementById(elementId); const input = document.getElementById(elementId);
element.select(); if (!input) {
console.error(`Element with id ${elementId} not found`);
return;
}
try { try {
document.execCommand('copy'); // Utiliser l'API Clipboard moderne
await navigator.clipboard.writeText(input.value);
// Créer et afficher la notification // Créer et afficher la notification
const notification = document.createElement('div'); const notification = document.createElement('div');
@ -283,9 +287,6 @@ function copyToClipboard(elementId, message) {
console.error('Erreur lors de la copie :', err); console.error('Erreur lors de la copie :', err);
alert('Erreur lors de la copie'); alert('Erreur lors de la copie');
} }
// Désélectionner le texte
element.blur();
} }
</script> </script>
<?php endif; ?> <?php endif; ?>