Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- document.addEventListener('DOMContentLoaded', function() {
- // Contact and payment addresses text copy functionality
- const copyButton = document.getElementById('copyButton');
- const codeBlock = document.getElementById('codeBlock');
- const messageDiv = document.getElementById('message');
- if (copyButton && codeBlock) {
- copyButton.addEventListener('click', function() {
- copyToClipboard(codeBlock, messageDiv);
- });
- }
- // MD5 hash copy functionality
- const md5CopyButton = document.getElementById('md5CopyButton');
- const md5Block = document.getElementById('md5Block');
- const md5MessageDiv = document.getElementById('md5Message');
- if (md5CopyButton && md5Block) {
- md5CopyButton.addEventListener('click', function() {
- copyToClipboard(md5Block, md5MessageDiv);
- });
- }
- // SHA-256 hash copy functionality
- const sha256CopyButton = document.getElementById('sha256CopyButton');
- const sha256Block = document.getElementById('sha256Block');
- const sha256MessageDiv = document.getElementById('sha256Message');
- if (sha256CopyButton && sha256Block) {
- sha256CopyButton.addEventListener('click', function() {
- copyToClipboard(sha256Block, sha256MessageDiv);
- });
- }
- // Copy function with failover
- function copyToClipboard(block, messageElement) {
- const text = block.textContent || block.innerText;
- // Try modern Clipboard API first
- if (navigator.clipboard) {
- navigator.clipboard.writeText(text)
- .then(() => {
- showMessage('Copied to clipboard!', 'success', messageElement);
- })
- .catch((err) => {
- console.warn('Clipboard API failed, falling back:', err);
- fallbackCopyToClipboard(block, messageElement);
- });
- } else {
- // No Clipboard API support, use fallback
- fallbackCopyToClipboard(block, messageElement);
- }
- }
- // Fallback using document.execCommand
- function fallbackCopyToClipboard(block, messageElement) {
- try {
- const range = document.createRange();
- range.selectNode(block);
- window.getSelection().removeAllRanges();
- window.getSelection().addRange(range);
- const successful = document.execCommand('copy');
- window.getSelection().removeAllRanges();
- if (successful) {
- showMessage('Copied to clipboard!', 'success', messageElement);
- } else {
- throw new Error('Copy command failed');
- }
- } catch (err) {
- showMessage('Failed to copy automatically. Please copy manually (Ctrl+C/Cmd+C).', 'error', messageElement);
- console.error('Copy error:', err);
- }
- }
- function showMessage(text, type, messageElement) {
- // Check if message element exists
- if (!messageElement) return;
- messageElement.textContent = text;
- messageElement.className = 'message ' + type;
- messageElement.style.display = 'block';
- setTimeout(function() {
- messageElement.style.display = 'none';
- }, 3000);
- }
- });
Add Comment
Please, Sign In to add comment