diff --git a/www/class/centreon-knowledge/wikiApi.class.php b/www/class/centreon-knowledge/wikiApi.class.php index 4ebac0aa3750cd3a2a1d71fed16c9a4217873310..32759cd838f6ee7cfaf5ff80ac92c18d369d0651 100644 --- a/www/class/centreon-knowledge/wikiApi.class.php +++ b/www/class/centreon-knowledge/wikiApi.class.php @@ -266,17 +266,24 @@ class WikiApi 'format' => 'json', 'action' => 'query', 'list' => 'allpages', - 'aplimit' => '1000' + 'aplimit' => '10' ); - curl_setopt($this->curl, CURLOPT_POSTFIELDS, $postfields); - $result = curl_exec($this->curl); - $result = json_decode($result); - $pages = array(); - foreach ($result->query->allpages as $page) { - $pages[] = $page->title; - } + do { + curl_setopt($this->curl, CURLOPT_POSTFIELDS, $postfields); + $result = curl_exec($this->curl); + $result = json_decode($result); + + foreach ($result->query->allpages as $page) { + $pages[] = $page->title; + } + + // Get next page if exists + if (isset($result->{'query-continue'}->allpages->apcontinue)) { + $postfields['apfrom'] = $result->{'query-continue'}->allpages->apcontinue; + } + } while (isset($result->{'query-continue'}->allpages->apcontinue)); return $pages; }