Widget:Autorenbox: Unterschied zwischen den Versionen
Aus ZUM-Unterrichten
KKeine Bearbeitungszusammenfassung Markierung: 2017-Quelltext-Bearbeitung |
KKeine Bearbeitungszusammenfassung Markierung: 2017-Quelltext-Bearbeitung |
||
Zeile 40: | Zeile 40: | ||
}; | }; | ||
const response = jQuery.Deferred(); | const response = jQuery.Deferred(); | ||
function continueQueryOrResolve( | function continueQueryOrResolve(response, query, pages, lastContinue){ | ||
api.get({...query, ...lastContinue}) | api.get({...query, ...lastContinue}) | ||
.then((response) => { | .then((response) => { | ||
const newResult = response.query.pages.reduce((pages, page) => { | const newResult = Object.values(response.query.pages).reduce((pages, page) => { | ||
pages[page.pageid] = {...pages[page.pageid], ...page}; | pages[page.pageid] = {...pages[page.pageid], ...page}; | ||
return | return pages; | ||
}, pages); | }, pages); | ||
if (response.continue !== undefined) { | if (response.continue !== undefined) { | ||
continueOrResolve( | continueOrResolve(response, query, newResult, response.continue); | ||
} else if (response.batchcomplete !== undefined) { | } else if (response.batchcomplete !== undefined) { | ||
response.resolve(newResult); | response.resolve(newResult); | ||
Zeile 54: | Zeile 54: | ||
}); | }); | ||
} | } | ||
continueQueryOrResolve(response, query, {}, null); | |||
response.then((pages) => { | response.then((pages) => { | ||
const userCounts = pages.reduce((acc, pageData) => { | const userCounts = pages.reduce((acc, pageData) => { |