Skip to content

Signature Macro Usage

Matthias Cullmann edited this page Aug 7, 2020 · 4 revisions

How it works

The macro allows to insert a contract into a confluence page and to sign that contract.

A contract consists of a title and a body. The body must have a minimum length of 10 characters.

Once the contract is signed the contents can not be modified any more. To ensure this, the contract is stored outside of the confluence page, see issue #1. A unique key is calculated based on the title, body and containing page id.

This means, as soon as you change the content or title of the contract or you copy it to a different page you will loose all signatures. When you restore (page history) to a signed state, signatures reappear. If you copy the same contract several times to the same page, the signature of any one of them will be applied to all copies.

Please be aware the containing page can still be modified so the signature only applies to the content inside macro title and body. You don't sign the page but the content of the contract.

Macro parameters

title

The contract title.

signers

List of named users who can sign the contract. Is merged with signerGroups and inherited signers.

signerGroups

Group of users who can sign the contract. Is merged with named signers and inherited signers. Please be aware this has impact on performance with large groups - consider using maxSigners.

Enter * (star) to let any logged in user sign. This disables the calculation of missing signatures and removes performance penalty for big groups.

There is no group picker, you need to enter the exact group names. Several names can be comma separated. You might prefer to protect the entire page and use the inheritance feature. If you protect the page you can also enter * as group name so that anybody who can see the page can sign.

inheritSigners

Same functionality as signers and signerGroups but inherited from the containing page.

maxSignatures

Maximum number of signatures to accept. Existing signatures are not removed.

Set to 0 (zero) to disable signing without modifying the signers.

notified

Named users to be notified when a contract is signed.

Notification is sent through confluence built in notification system and per email if an SMTP server is configured.

panel

Toggle panel around contract.

It is highly recommended to use the panel as otherwise surrounding page and the contract may be confused. Also the macro action icons are embedded in the panel.

protectedContent

If selected a protected child page is created. Only writers on the parent page have access to this page. Every signer of the contract automatically gets read access to this child page.

For security reasons the child page uses the same unique key as the contract (see above). It is recommended to first finalize the contract title and body and then activate the protected content, as existing pages are not deleted automatically.

This is useful for a NDAs.

Macro body

You can use a safe subset of markdown. External content (links and images) is disabled, as they would allow to change a signed contract.

flexmark is used as rendering engine.

Macro actions

Via the icons in the surrounding panel, you can

  • send email to signers
  • export the contract - display a HTML version without the surrounding page
  • access the protected content child page