Skip to main content

OpenAIRE Graph
Bibliometrics

Enter the new era of Research Assessment with the OpenAIRE Graph
document.addEventListener("DOMContentLoaded", function() { function fixImages() { document.querySelectorAll('img').forEach(function(img) { var src = img.getAttribute('src'); if (src && src.startsWith('images/')) { img.setAttribute('src', '/' + src); } }); } // Εκτέλεση κατά το πρώτο φόρτωμα fixImages(); // Παρακολούθηση της σελίδας για dynamic αλλαγές (π.χ. lazy loading) var observer = new MutationObserver(fixImages); observer.observe(document.body, { childList: true, subtree: true }); }); document.addEventListener("DOMContentLoaded", function() { function bypassBrokenCache() { document.querySelectorAll('img').forEach(function(img) { var currentSrc = img.getAttribute('src'); if (currentSrc) { // Περίπτωση Α: Η εικόνα περνάει από το com_ajax cache του YOOtheme if (currentSrc.includes('com_ajax') && currentSrc.includes('&src=images/')) { // Απομονώνουμε το κομμάτι μετά το &src= var parts = currentSrc.split('&src='); if (parts[1]) { var realPath = parts[1].split('&')[0]; // Παίρνουμε μόνο το path της εικόνας img.setAttribute('src', '/' + decodeURIComponent(realPath)); } } // Περίπτωση Β: Η εικόνα είναι απλό relative path χωρίς slash else if (currentSrc.startsWith('images/')) { img.setAttribute('src', '/' + currentSrc); } } }); } // Εκτέλεση παντού και συνεχώς (για lazy loading και tabs) bypassBrokenCache(); var observer = new MutationObserver(bypassBrokenCache); observer.observe(document.body, { childList: true, subtree: true }); document.addEventListener('click', function() { setTimeout(bypassBrokenCache, 50); setTimeout(bypassBrokenCache, 200); }); });