xref: /plugin/pagesicon/script/favicon-runtime.js (revision 19821f1cafeaa8d92e984e47c4c84aa90423d907)
1b603bbe1SLORTET(function () {
2*19821f1cSLORTET    document.addEventListener('DOMContentLoaded', function () {
3*19821f1cSLORTET        var meta = document.querySelector('meta[name="pagesicon-favicon"]');
4*19821f1cSLORTET        if (!meta) return;
5*19821f1cSLORTET
6*19821f1cSLORTET        var href = meta.getAttribute('content');
7*19821f1cSLORTET        if (!href) return;
8b603bbe1SLORTET
9b603bbe1SLORTET        var links = document.head.querySelectorAll('link[rel*="icon"]');
10b603bbe1SLORTET        for (var i = 0; i < links.length; i++) {
11b603bbe1SLORTET            if (links[i].parentNode) {
12b603bbe1SLORTET                links[i].parentNode.removeChild(links[i]);
13b603bbe1SLORTET            }
14b603bbe1SLORTET        }
15b603bbe1SLORTET
16b603bbe1SLORTET        var icon = document.createElement('link');
17b603bbe1SLORTET        icon.rel = 'icon';
18b603bbe1SLORTET        icon.href = href;
19b603bbe1SLORTET        document.head.appendChild(icon);
20b603bbe1SLORTET
21b603bbe1SLORTET        var shortcut = document.createElement('link');
22b603bbe1SLORTET        shortcut.rel = 'shortcut icon';
23b603bbe1SLORTET        shortcut.href = href;
24b603bbe1SLORTET        document.head.appendChild(shortcut);
25b603bbe1SLORTET    });
26b603bbe1SLORTET})();
27