Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 5

Scenario

Live template
templateTypetemplate
templateOption{"label":"Use Case livetemplate cloud ready","value":"475515452","templateType":"template"}
templateTypeOption{"label":"Confluence template/blueprint","value":"template"}
templateId475515452
excerptScenario As administrator or content manager on a Confluence instance with a lot of content, there may be a need to know which spaces are becoming obsolete.

...

This recipe allows you to show the dates and times of all spaces when it was last touched by a user (commented/new additions/modified, etc).

...

Be aware that this recipe may take a while to load results if your instance has a large number or spaces or pages. You may want to limit it to specific spaces.

...

Result

...

Recipe

...

Apps

...

Reporting for Confluence Server & Data Center

...

Level

...

Easy

...

Estimated time

...

15 minutes

...

Macros

...

Combining Reporter, Content Reporter, Date Sort, Repeat Filter, Report Column, Report Info, Report Table, Text Filter, Text Sort

...

Suppliers

...

Content Supplier

...

Storage format

...

You can copy and paste this code into the Confluence Source Editor :

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

<ac:structured-macro

...

ac:macro-id="356f269f-552c-405b-aa59-61745bdb8ec6"

...

ac:name="report-table"

...

ac:schema-version="1">

...

<ac:rich-text-body>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

<ac:structured-macro

...

ac:macro-id="4ac2f5e5-7886-438f-b9c5-c2944b6fd13a"

...

ac:name="combining-reporter"

...

ac:schema-version="1">

...

<ac:rich-text-body>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

<ac:structured-macro

...

ac:macro-id="d0fe9fa9-e108-49fd-9d8f-c8e49ee89113"

...

ac:name="content-reporter"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="spaces">

...

<ri:space

...

ri:space-key="@all"

...

/>

...

</ac:parameter>

...

<ac:rich-text-body>

...

<ac:structured-macro

...

ac:macro-id="6d3596e9-dcfa-4cb9-bc7d-c4c09d7a7d1f"

...

ac:name="text-filter"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="required">true</ac:parameter>

...

<ac:parameter

...

ac:name="">content:space</ac:parameter>

...

</ac:structured-macro>

...

<ac:structured-macro

...

ac:macro-id="c9ab9f36-23d1-4d68-8d8c-f75cfed676af"

...

ac:name="text-sort"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="">content:space</ac:parameter>

...

</ac:structured-macro>

...

<ac:structured-macro

...

ac:macro-id="42de1ec7-6f7f-44f0-87cc-602169f783a6"

...

ac:name="date-sort"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="order">descending</ac:parameter>

...

<ac:parameter

...

ac:name="">content:modification

...

date</ac:parameter>

...

</ac:structured-macro>

...

</ac:rich-text-body>

...

</ac:structured-macro>

...

<p

...

class="auto-cursor-target">

...

<ac:structured-macro

...

ac:macro-id="04e44dce-093b-40ad-9a80-13f2c75f4ca7"

...

ac:name="repeat-filter"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="match">first</ac:parameter>

...

<ac:parameter

...

ac:name="">content:space</ac:parameter>

...

</ac:structured-macro>

...

</p>

...

</ac:rich-text-body>

...

</ac:structured-macro>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

<ac:structured-macro

...

ac:macro-id="cb214b42-0a70-4e25-8da6-b31706d843ed"

...

ac:name="report-column"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="title">Space</ac:parameter>

...

<ac:rich-text-body>

...

<p>

...

<ac:structured-macro

...

ac:macro-id="eee7d0e3-5e13-465f-8ca7-e76db7f39d3e"

...

ac:name="report-info"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="">content:space</ac:parameter>

...

</ac:structured-macro>

...

</p>

...

</ac:rich-text-body>

...

</ac:structured-macro>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

<ac:structured-macro

...

ac:macro-id="c0f72f1f-1726-404d-8aab-f1027d2950be"

...

ac:name="report-column"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="title">Content</ac:parameter>

...

<ac:rich-text-body>

...

<p>

...

<ac:structured-macro

...

ac:macro-id="fb4d86ec-569b-4cde-813f-4bdf059ef140"

...

ac:name="report-info"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="">content:title</ac:parameter>

...

</ac:structured-macro>

...

</p>

...

</ac:rich-text-body>

...

</ac:structured-macro>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

<ac:structured-macro

...

ac:macro-id="61388a67-c993-4758-bcf9-7f40b3cba10e"

...

ac:name="report-column"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="title">Last

...

Modified</ac:parameter>

...

<ac:rich-text-body>

...

<p>

...

<ac:structured-macro

...

ac:macro-id="1c68f34e-3c40-4751-af75-242764d7054c"

...

ac:name="report-info"

...

ac:schema-version="1">

...

<ac:parameter

...

ac:name="">content:modification

...

date</ac:parameter>

...

</ac:structured-macro>

...

</p>

...

</ac:rich-text-body>

...

</ac:structured-macro>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

</ac:rich-text-body>

...

</ac:structured-macro>

...

<p

...

class="auto-cursor-target">

...

<br

...

/>

...

</p>

...

Macro structure

...

You can recreate the example in the editor view:

...

Steps

...

Steps

...

Description

...

1

...

The report will be formatted as a table with Report Table.

...

2

...

Combining Reporter is used to enclose the Content Reporter in #2. It takes the results list of contents retrieved from Content Reporter to be filtered via Repeat Filter in #7.

...

3

...

All contents from all spaces are retrieved from Content Reporter by setting spaces parameter to '@all'.

...

Be aware that usingĀ '@all' may cause performance issues if your instance has a large number or spaces or pages. You may want to limit it to specific spaces keys.

...

4

...

The contents from Content Reporter is first filtered to ensure they have valid spaces. This is done via Text Filter, setting supplier key to 'Content Supplier', and setting required parameter to 'true'.

...

5

...

The contents are then sorted according to space name via Text Sort, setting supplier key to 'Content Supplier'.

...

6

...

The contents are then sorted according to date of last modification via Date Sort, setting supplier key to 'Content Supplier'. The order is set to 'descending'.

...

7

...

The sorted and filtered list of contents from Content Reporter is then filtered again, taking out contents with same spaces, and only include the first content for each space. This is done via Repeat Filter, setting supplier key to 'Content Supplier'.

...

8

...

Each column of the table is outlined using Report Column. The three column titles are 'Space', 'Content' and 'Last Modified', in that order.

...

9

...

The space name of each content retrieved from Combining Reporter is displayed via Report Info, setting supplier key to 'Content Supplier'.

...

10

...

The content name of each content retrieved from Combining Reporter is displayed via Report Info, setting supplier key to 'Content Supplier'.

...

11

...

The date of last modification of each content retrieved from Combining Reporter is displayed via Report Info setting supplier key to 'Content Supplier'.

...

Line-by-Line Explanation

...

N/A
fieldGroupKeys{"6aqnjkbqoz":["net.customware.confluence.plugin.scaffolding__6aqnjkbqoz__data_0_gngub76b9c"]}