mirror of
https://github.com/TRaSH-Guides/Guides.git
synced 2026-04-27 11:51:27 -05:00
feat(gha): change hide_announce to evaluate again hostname (#2276)
This commit is contained in:
@@ -4,25 +4,49 @@ document$.subscribe(function() {
|
||||
const announceElement = document.querySelector('[data-md-component="announce"] .md-banner__inner');
|
||||
|
||||
if (announceElement) {
|
||||
console.log("Announce element found:", announceElement);
|
||||
|
||||
const canonicalUrlElement = document.querySelector('link[rel="canonical"]');
|
||||
|
||||
if (canonicalUrlElement) {
|
||||
const currentUrl = window.location.href;
|
||||
const canonicalHref = canonicalUrlElement.href;
|
||||
|
||||
const normalizeUrl = (url) => {
|
||||
let normalized = url.replace(/\/+$/, '');
|
||||
return normalized;
|
||||
console.log("Current URL:", currentUrl);
|
||||
console.log("Canonical URL:", canonicalHref);
|
||||
|
||||
const getBaseUrl = (url) => {
|
||||
try {
|
||||
const urlObj = new URL(url);
|
||||
return `${urlObj.hostname}`;
|
||||
} catch (error) {
|
||||
console.error("Invalid URL:", url, error);
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
const normalizedCurrentUrl = normalizeUrl(currentUrl);
|
||||
const normalizedCanonicalHref = normalizeUrl(canonicalHref);
|
||||
const currentBaseUrl = getBaseUrl(currentUrl);
|
||||
const canonicalBaseUrl = getBaseUrl(canonicalHref);
|
||||
|
||||
if (normalizedCurrentUrl !== normalizedCanonicalHref) {
|
||||
announceElement.style.display = 'block';
|
||||
if (currentBaseUrl && canonicalBaseUrl) {
|
||||
console.log("Current Base URL:", currentBaseUrl);
|
||||
console.log("Canonical Base URL:", canonicalBaseUrl);
|
||||
|
||||
if (currentBaseUrl !== canonicalBaseUrl) {
|
||||
console.log("Base URLs do NOT match. Showing announce element.");
|
||||
announceElement.style.display = 'block';
|
||||
} else {
|
||||
console.log("Base URLs match. Element remains hidden (as set by CSS).");
|
||||
}
|
||||
} else {
|
||||
console.log("Could not extract base URL. Check URLs or browser console.");
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log("Canonical URL element NOT found. Is a canonical URL set?");
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
console.log("Announce element NOT found. Check your selector.");
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user