Script runner for Confluence event handler listening on event from other plugins

Hi,

I am using the three plugins Script Runner for Confluence, Comalatech Workflows and Metadata (by A.Armstrong). Is it possible to write an event handler with Script Runner that listens on

  • events implemented by Comalatech Workflows (e.g. ContentApproveEvent or StateChangeEvent), or
  • events related to metadata fields? 

Thanks for any answer!

3 answers

Hi Tuelle,

Was thinking how you could solve this. Took me a while since I had to actually decompile the Comala Workflows add-on and understand how they do it. The good news is that there is sort of a way that you can fix this.

You'll need to use the Script Listeners and listen to the PageUpdateEvent.

Every time a Approval/Rejection or whatever state is performed, the PageUpdateEvent will be fired. This means you can actually catch the event, verify if it comes from Comala, and add a contentProperty stating the initial version using

this.contentPropertyManager.setStringProperty(page, "versionBeforeApproval", currentPageVersion);

Then when it's approved, you'll get the same PageUpdateEvent. There you'll need to check for the Approved state as it is shown on the following screenshot:

Screen Shot 2017-02-15 at 16.26.30.png

Then, I would suggest you add another contentProperty issuing the version after the approval.

This means you'll end up with 2 content properties, one that defines the beginning and the other the end.

Finally, you can display those in the UI using a Script Fragment that just calls the following REST Api:

https://docs.atlassian.com/atlassian-confluence/REST/latest/#content/

{id}

/property-findByKey

Hope that helps.

Rafael

@Jamie Echlin [Adaptavist] I believe Metadata fields comes from the Metadata add-on

If it fires events then https://productsupport.adaptavist.com/browse/SRPLAT-96 should cover it anyways.

0 vote

Unfortunately not currently for the first point: https://productsupport.adaptavist.com/browse/SRPLAT-96

For the second point @Rafael Franco [Adaptavist] can you help please? I'm not sure what a metadata field is in this context.

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published yesterday in Confluence

Three common content challenges + how to manage them

An efficient enterprise content management system, or ECM, is a must-have for companies that create work online (cough   cough, all companies). If content calendars, marketing plans, and bu...

37 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you