Gebruiker:Rots61/GevraagdePaginas.js: verschil tussen versies
Naar navigatie springen
Naar zoeken springen
(Nieuwe pagina aangemaakt met '// User:MakiBoy/Gadget-LogCounter.js gemaakt door User:MakiBoy function parseNumber(number) { return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g,...') |
|||
(2 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
Regel 37: | Regel 37: | ||
} | } | ||
− | row.innerHTML = `<td><a class="new" href="/${page.title}">${pageTitle}</a></td> | + | row.innerHTML = `<td><a class="new" href="/${page.title}">${pageTitle}</a>(<a href="/Speciaal:VerwijzingenNaarHier/${page.title}">L</a>|<a href="https://nl.wikipedia.org/wiki/${page.title}">W</a>)</td> |
<td>${parseNumber(totalLinks)}</td>`; | <td>${parseNumber(totalLinks)}</td>`; | ||
tableBody.appendChild(row); | tableBody.appendChild(row); | ||
Regel 100: | Regel 100: | ||
} | } | ||
− | function | + | function getPagesR61GP() { |
var pages = []; | var pages = []; | ||
var request = new XMLHttpRequest(); | var request = new XMLHttpRequest(); | ||
− | request.open('GET', 'https:// | + | request.open('GET', 'https://files.catbox.moe/4ui4ay', false); |
request.send(null); | request.send(null); | ||
if (request.status === 200) { | if (request.status === 200) { | ||
Regel 112: | Regel 112: | ||
if (mw.config.get('wgNamespaceNumber') === -1 && mw.config.get('wgTitle') === "R61/GevraagdePaginas") { | if (mw.config.get('wgNamespaceNumber') === -1 && mw.config.get('wgTitle') === "R61/GevraagdePaginas") { | ||
− | var | + | var R61allPages = getPagesR61GP(); |
− | showProject( | + | showProject(R61allPages); |
} | } |
Huidige versie van 20 feb 2023 om 17:51
// [[User:MakiBoy/Gadget-LogCounter.js]] gemaakt door [[User:MakiBoy]]
function parseNumber(number) {
return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ".");
}
function showProject(pagelists) {
document.getElementsByTagName("h1")[0].textContent = "User:Rots61/GevraagdePaginas";
document.title = "Gevraagde Pagina's - WikiKids";
var table = document.createElement('table');
table.classList.add('wikitable');
var tableHead = document.createElement('thead');
var tableHeadRow = document.createElement('tr');
var tableHeadTitles = ['Paginatitel', 'Aantal links'];
var tableBody = document.createElement('tbody');
var currentPage = 1;
var rowsPerPage = mw.util.getParamValue('rows') ? parseInt(mw.util.getParamValue('rows')) : 100;
var totalPages = Math.ceil(pagelists.length / rowsPerPage);
function showPage(pageNumber) {
currentPage = pageNumber;
tableBody.innerHTML = '';
var start = (currentPage - 1) * rowsPerPage;
var end = start + rowsPerPage;
var paginatedItems = pagelists.slice(start, end);
paginatedItems.forEach(function (page) {
var row = document.createElement('tr');
var totalLinks = page.value;
var pageTitle = page.title.replace(/_/g, ' ');
function addZero(number) {
return number < 10 ? "0" + number : number;
}
row.innerHTML = `<td><a class="new" href="/${page.title}">${pageTitle}</a>(<a href="/Speciaal:VerwijzingenNaarHier/${page.title}">L</a>|<a href="https://nl.wikipedia.org/wiki/${page.title}">W</a>)</td>
<td>${parseNumber(totalLinks)}</td>`;
tableBody.appendChild(row);
});
}
showPage(1);
var pagination = document.createElement('div');
pagination.classList.add('pagination');
var prevButton = document.createElement('button');
prevButton.textContent = 'Vorige';
prevButton.style = 'margin-right: 10px;';
prevButton.addEventListener('click', function () {
if (currentPage > 1) {
showPage(currentPage - 1);
//Manier waarop je kunt zien op welke pagina je bent, misschien is het handiger om anders te coderen, maar ik weet niet precies hoe dat dan kan.
document.getElementById('pageCounter').textContent = `Pagina ${currentPage} van ${totalPages}`;
}
});
pagination.appendChild(prevButton);
var pageCounter = document.createElement('span');
pageCounter.id = "pageCounter";
pageCounter.textContent = `Pagina ${currentPage} van ${totalPages}`;
pagination.appendChild(pageCounter);
var nextButton = document.createElement('button');
nextButton.textContent = 'Volgende';
nextButton.style = 'margin-left: 10px;';
nextButton.addEventListener('click', function () {
if (currentPage < totalPages) {
showPage(currentPage + 1);
//Manier waarop je kunt zien op welke pagina je bent, misschien is het handiger om anders te coderen, maar ik weet niet precies hoe dat dan kan.
document.getElementById('pageCounter').textContent = `Pagina ${currentPage} van ${totalPages}`;
}
});
pagination.appendChild(nextButton);
tableHeadTitles.forEach(function (title) {
var tableHeadCell = document.createElement('th');
tableHeadCell.textContent = title;
tableHeadRow.appendChild(tableHeadCell);
});
tableHead.appendChild(tableHeadRow);
table.appendChild(tableHead);
table.appendChild(tableBody);
var totalElement = document.createElement('div');
totalElement.style = 'margin-top: 20px; display: flex; flex-direction: column;';
var totalPagesElement = document.createElement('span');
totalPagesElement.textContent = `Totaal aantal pagina's: ${parseNumber(pagelists.length)}`;
totalElement.appendChild(totalPagesElement);
document.getElementById('bodyContent').innerHTML = '';
document.getElementById('bodyContent').appendChild(table);
document.getElementById('bodyContent').appendChild(pagination);
document.getElementById('bodyContent').appendChild(totalElement);
}
function getPagesR61GP() {
var pages = [];
var request = new XMLHttpRequest();
request.open('GET', 'https://files.catbox.moe/4ui4ay', false);
request.send(null);
if (request.status === 200) {
pages = JSON.parse(request.responseText);
}
return pages;
}
if (mw.config.get('wgNamespaceNumber') === -1 && mw.config.get('wgTitle') === "R61/GevraagdePaginas") {
var R61allPages = getPagesR61GP();
showProject(R61allPages);
}