9.515
redigeringer
No edit summary Tag: Manuel tilbagerulning |
mNo edit summary |
||
Linje 44: | Linje 44: | ||
/* Add link to accessability-declaration in footer */ | /* Add link to accessability-declaration in footer */ | ||
$("#f-list").append( '<li id="accessability-declaration"><a class="noprint stopMobileRedirectToggle" href="https://www.was.digst.dk/aarhuswiki-dk">Webtilgængelighedserklæring</a></li>' ); | $("#f-list").append( '<li id="accessability-declaration"><a class="noprint stopMobileRedirectToggle" href="https://www.was.digst.dk/aarhuswiki-dk">Webtilgængelighedserklæring</a></li>' ); | ||
}); | |||
// Function to generate a random integer between 0 and max | |||
function getRandomInt(max) { | |||
return Math.floor(Math.random() * Math.floor(max)); | |||
} | |||
// Function to retrieve the page ID of a random page | |||
function getRandomPageId() { | |||
var apiUrl = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php'; | |||
var params = { | |||
action: 'query', | |||
generator: 'random', | |||
format: 'json', | |||
prop: 'info', | |||
inprop: 'url', | |||
formatversion: 2, | |||
indexpageids: true, | |||
redirects: true | |||
}; | |||
return new Promise(function(resolve, reject) { | |||
$.get(apiUrl, params).done(function(data) { | |||
var pageIds = data.query.pageids; | |||
if (pageIds.length > 0) { | |||
var randomIndex = getRandomInt(pageIds.length); | |||
var pageId = pageIds[randomIndex]; | |||
resolve(pageId); | |||
} else { | |||
reject('No pages found.'); | |||
} | |||
}).fail(function() { | |||
reject('Failed to retrieve random page ID.'); | |||
}); | |||
}); | |||
} | |||
// Function to add a "Random Article" link to the navigation panel | |||
function addRandomArticleLink() { | |||
var navPanel = $('#p-navigation ul'); | |||
if (navPanel.length > 0) { | |||
getRandomPageId().then(function(pageId) { | |||
var linkUrl = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + encodeURIComponent(mw.config.get('wgPageName')) + '&action=edit§ion=0&random=' + pageId; | |||
var linkText = 'Tilfældig side'; | |||
navPanel.append('<li><a href="' + linkUrl + '">' + linkText + '</a></li>'); | |||
}).catch(function(errorMessage) { | |||
console.error('Error adding "Random Article" link: ' + errorMessage); | |||
}); | |||
} | |||
} | |||
// Add the "Random Article" link to the navigation panel when the document is ready | |||
$(function() { | |||
addRandomArticleLink(); | |||
}); | }); |