// ==UserScript==
// @name           CPAN Image Fixer
// @namespace      http://chocolatey.com/code/js
// @description    Display images on CPAN when referrer logging is disabled
// @author         chocolateboy <chocolate.boy@email.com>
// @include        http://cpan.org
// @include        http://cpan.org/*
// @include        http://*.cpan.org
// @include        http://*.cpan.org/*
// @version        0.2 (2005-11-04)
// ==/UserScript==

(function () {
    const xpath = '//img[@src="/s/img/cpan-10.jpg" or starts-with(@src, "/s/img/stars-")]';
    var images = document.evaluate(xpath, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);

    for (var i = 0; i < images.snapshotLength; ++i) {
        var image = images.snapshotItem(i);
        var src = image.getAttribute('src');

        if (src == '/s/img/cpan-10.jpg') {
            src = 'http://cpan.org/misc/jpg/cpan.jpg';
        } else {
            src = src.replace(/^\/s\/img\/stars-(\d)\.(\d)\.gif$/, 'http://cpanratings.perl.org/images/stars-$1.$2.png');
        }

        image.setAttribute('src', src);
    }
})();
