Files
quality_recticel/windows_print_service/chrome_extension/content.js
2025-09-25 22:26:32 +03:00

48 lines
1.6 KiB
JavaScript

/**
* Quality Label Printing Service - Content Script
* Simplified injection for extension ID detection
*/
console.log('Quality Label Printing - Content Script Loaded');
// Inject extension ID into DOM for web page detection
function injectExtensionId() {
// Remove any existing extension ID element
const existingElement = document.getElementById('chrome-extension-id');
if (existingElement) {
existingElement.remove();
}
// Create new element with extension ID
const extensionIdElement = document.createElement('div');
extensionIdElement.id = 'chrome-extension-id';
extensionIdElement.setAttribute('data-extension-id', chrome.runtime.id);
extensionIdElement.style.display = 'none';
// Add to document head or body
(document.head || document.body || document.documentElement).appendChild(extensionIdElement);
console.log('Extension ID injected:', chrome.runtime.id);
}
// Inject extension ID when DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', injectExtensionId);
} else {
injectExtensionId();
}
// Also inject when page changes (for SPAs)
if (window.navigation) {
navigation.addEventListener('navigate', injectExtensionId);
} else {
// Fallback for older browsers
let lastUrl = location.href;
new MutationObserver(() => {
const url = location.href;
if (url !== lastUrl) {
lastUrl = url;
setTimeout(injectExtensionId, 100);
}
}).observe(document, { subtree: true, childList: true });
}