Skip to content

Commit 4a12f05

Browse files
authored
Merge pull request #37 from spark1security/confluence-cql-pagination
Added pagination to Confluence CQL
2 parents c7ab6a2 + a22ff21 commit 4a12f05

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

src/n0s1/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "1.0.29"
1+
__version__ = "1.0.30"

src/n0s1/controllers/confluence_controller.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -221,11 +221,21 @@ def get_data(self, include_coments=False, limit=None):
221221
if cql:
222222
try:
223223
res = self._client.cql(cql, limit=limit)
224-
results = res.get("results", [])
225-
for r in results:
226-
content_type = r.get("content", {}).get("type", None)
227-
if content_type and content_type.lower() == "page".lower():
228-
pages.append(r.get("content", {}))
224+
while res:
225+
results = res.get("results", [])
226+
for r in results:
227+
content_type = r.get("content", {}).get("type", None)
228+
if content_type and content_type.lower() == "page".lower():
229+
pages.append(r.get("content", {}))
230+
231+
next = res.get("_links", {}).get("next", None)
232+
res = None
233+
if next:
234+
url = f"{self._url}/wiki{next}"
235+
response = self._get_request(url)
236+
if response:
237+
res = response.json()
238+
229239
if len(pages) > 0:
230240
using_cql = True
231241
yield from self.process_pages(include_coments, limit, pages)

0 commit comments

Comments
 (0)