Корисник:KrleNS/HarvErrors.js
Изглед
Напомена: Пошто објавите измене, можда ћете морати да обришете кеш меморију прегледача како бисте их видели. Google Chrome, Firefox, Microsoft Edge и Safari: Држите ⇧ Shift и кликните дугме Reload на траци са алаткама. За детаље и упутства о другим прегледачима, погледајте en:Wikipedia:Bypass your cache.
if(window.checkLinksToCitations === undefined)
window.checkLinksToCitations = true;
jQuery(document).ready(function($) {
// first check: do links in Harvard citations point to a valid citation?
var links = document.links;
for (var i=0; i < links.length; i++)
{
var href = links[i].getAttribute('href');
if (href.indexOf('#CITEREF') == 0)
if (document.getElementById(href.substring(1)) == null)
links[i].parentNode.innerHTML +=
" <strong class=error>Harv error: link from " +
href +
" doesn't point to any citation.</strong>";
}
// second check: do CITEREF IDs have Harvard citations pointing to them?
if(window.checkLinksToCitations) {
var cites = jQuery('.citation');
for(var i=0; i < cites.length; i++) {
var id = cites[i].getAttribute('id');
// we only need to check citations with a
if(!id || id.indexOf('CITEREF') !== 0)
continue;
// don't do cites that are inside a ref
var parentid = cites[i].parentNode.parentNode.getAttribute('id');
if(parentid && parentid.indexOf('cite_note') === 0)
continue;
// check for links to this citation
var query = 'a[href|="#' + id + '"]';
if(jQuery(query).length == 0) {
cites[i].innerHTML +=
" <strong class=warning>Harv warning: There is no link pointing to this citation. The anchor is named " + id + ".</strong>";
}
}
}
});