- Attachments:18
- Added by Roberto Dominguez, last edited by Roberto Dominguez on Jun 12, 2009 (view change)
|
Approvals Workflow Plugin 2.0.3The Approvals Workflow plugin integrates seamlessly with Confluence to provide an innovative way of managing workflows and content approvals, without compromising the open and collaborative philosophy of a wiki. Users can create their own approval checks in their pages, or define more sophisticated workflows for entire spaces to enforce rules and actions. |
| Documentation is now available here |
Overview
|
Different approvals can be defined at any time in any page, or for all the pages in a Space . Once an approval is defined, it is shown on the page and users can approve or reject the document. |
|
A collection of approvals, rules and actions can be defined in a workflow. A workflow is associated with a space or spaces. This means that all the pages created in a space will contain the approvals defined in the workflow and will be subject to the same rules. Triggers can also be defined to execute actions when different events occur. Events include page creation, update, approval or rejection and label changes. Actions include labels and metadata manipulation, wiki-segment insertion and email or message notifications. |
|
Every approval or rejection is recorded on each page and users can access previous versions of approved pages. Users can see what pages have been approved and rejected, as well as those pages that have to be approved or re-approved. |
|
Versions of attachments (including embedded images) are recorded with the approvals. This means that different approved versions of a page will keep track the approved version of attachments. Different workflows can be defined and they can be associated with labels. This way, users can enable a workflow just by adding the label to the page they are working on. Approvals can be defined as final to make the latest approved version of a page as a Published version and to make this version the default view for read-only users. |
Publishing in different Spaces.Integrates with the Content Publishing Plugin to publish to different spaces. Page drafts can be edited in a working space and be published to a public space once they have received a proper approval and following the require workflow. Permissions can be applied to ensure only authorized users publish content and to restrict access to working versions. |
Features
Approvals
Approvals can be defined through the [{{\{approval\}}}] or in the Space Administration section.
Each approval can be subject to certain [Conditions], such as depending on another approval or restricted to a user or group. If the conditions for the approval have not been met, or the user does not have the right permissions, then the approval is pending
. When all the conditions are met, an approval check becomes available
and then it could either be approved
or rejected
.

When a document is modified after being approved/rejected, then the approval check becomes outdated and it would have to be approved or rejected again. The latest approved or rejected version is shown for that approval check.

Space Approvals
A collection of approvals can be defined by Space Administrators to be active in all the pages of a Space.

Approvals Management
The approvals history is available for all pages. Users can see what pages have been approved and rejected, as well as those pages that have to be approved or re-approved.

Workflows
Workflows can be defined using the [{{\{workflow\}}}] macro. A workflow is composed of [{{\{approval\}}}] and [{{\{trigger\}}}] macros. Triggers actions can be defined using the [{{\{set-label\}}}], [{{\{remove-label\}}}], [{{\{set-message\}}}], [{{\{send-email\}}}] and [{{\{add-comment\}}}] macros. Actions could also be metadata macros such as {metadata} or {metadata-list}.
Triggers can also have [Conditions] such as existence of labels, metadata values or user permissions.
A workflow is defined as a page and it becomes available to the space containing it, or to the list of spaces specified in the {workflow} macro itself.
Workflows are rendered in such a way that it easy to understand the rules and elements.
Security
The plugin verifies always that the user requesting any changes have the proper permissions. When properly defined, workflows will not pose any added risk to the system.
There is however the possibility of causing unexpected behavior while defining or debugging workflows.
To mitigate the risk of causing any damage, a number of measures have been taken.
Workflows are disabled by default, but they can be enabled and we can restrict their definition to specific spaces. Existing Confluence permissions could then be applied.
This way, the actual workflows can be defined in a secured space, but they can be applied on any other space. The Confluence administrator can also define in what spaces user can create their own approvals.
The workflow actions are executed when certain events occur. When defining triggers, it is possible that a workflow enters an infinite loop by mistake.
To mitigate any potential damage in such cases, the workflow engine has a mechanism that will disable the offending workflow if an infinite loop is detected. This mechanism will be work in most cases, however is up to the user defining the workflow to ensure these problems are avoided.
Access restrictions
The plugin allows for restricting access to un-approved content. However it is not meant to be secure access control, but to restrict casual access to not approve versions. For more secure access restriction, Confluence's existing permissions must be used.
Performance
Like any other plugin handling events, this plugin adds some processing when viewing and editing pages. It was specially designed to minimize the impact of the this processing, specially on spaces not using it and when viewing pages.
Viewing pages
Spaces not using the plugin can be excluded from any additional processing by ensuring the workflow view is configured only in those spaces where it is going to be used.
In Spaces using the plugin, Approvals are loaded and cached every time a page is viewed. Once a page is loaded, the server is polled every few seconds for instant-on-onpage notification. The refresh period can be changed, or the feature removed all together, for installations with high audiences.
Editing Pages
Every time a page is edited (created, updated, trashed) or a label is changed (added/removed), a quick in-memory query is made to determine if the page is subject to a workflow, wether or not the page is in a space using the plugin.
Approvals
Approvals can be defined through the [{{\{approval\}}}] or in the Space Administration section.
Each approval can be subject to certain [Conditions], such as depending on another approval or restricted to a user or group. If the conditions for the approval have not been met, or the user does not have the right permissions, then the approval is pending
. When all the conditions are met, an approval check becomes available
and then it could either be approved
or rejected
.

When a document is modified after being approved/rejected, then the approval check becomes outdated and it would have to be approved or rejected again. The latest approved or rejected version is shown for that approval check.

Space Approvals
A collection of approvals can be defined by Space Administrators to be active in all the pages of a Space.

Approvals Management
The approvals history is available for all pages. Users can see what pages have been approved and rejected, as well as those pages that have to be approved or re-approved.

Workflows
Workflows can be defined using the [{{\{workflow\}}}] macro. A workflow is composed of [{{\{approval\}}}] and [{{\{trigger\}}}] macros. Triggers actions can be defined using the [{{\{set-label\}}}], [{{\{remove-label\}}}], [{{\{set-message\}}}], [{{\{send-email\}}}] and [{{\{add-comment\}}}] macros. Actions could also be metadata macros such as {metadata} or {metadata-list}.
Triggers can also have [Conditions] such as existence of labels, metadata values or user permissions.
A workflow is defined as a page and it becomes available to the space containing it, or to the list of spaces specified in the {workflow} macro itself.
Workflows are rendered in such a way that it easy to understand the rules and elements.
Security
The plugin verifies always that the user requesting any changes have the proper permissions. When properly defined, workflows will not pose any added risk to the system.
There is however the possibility of causing unexpected behavior while defining or debugging workflows.
To mitigate the risk of causing any damage, a number of measures have been taken.
Workflows are disabled by default, but they can be enabled and we can restrict their definition to specific spaces. Existing Confluence permissions could then be applied.
This way, the actual workflows can be defined in a secured space, but they can be applied on any other space. The Confluence administrator can also define in what spaces user can create their own approvals.
The workflow actions are executed when certain events occur. When defining triggers, it is possible that a workflow enters an infinite loop by mistake.
To mitigate any potential damage in such cases, the workflow engine has a mechanism that will disable the offending workflow if an infinite loop is detected. This mechanism will be work in most cases, however is up to the user defining the workflow to ensure these problems are avoided.
Access restrictions
The plugin allows for restricting access to un-approved content. However it is not meant to be secure access control, but to restrict casual access to not approve versions. For more secure access restriction, Confluence's existing permissions must be used.
Performance
Like any other plugin handling events, this plugin adds some processing when viewing and editing pages. It was specially designed to minimize the impact of the this processing, specially on spaces not using it and when viewing pages.
Viewing pages
Spaces not using the plugin can be excluded from any additional processing by ensuring the workflow view is configured only in those spaces where it is going to be used.
In Spaces using the plugin, Approvals are loaded and cached every time a page is viewed. Once a page is loaded, the server is polled every few seconds for instant-on-onpage notification. The refresh period can be changed, or the feature removed all together, for installations with high audiences.
Editing Pages
Every time a page is edited (created, updated, trashed) or a label is changed (added/removed), a quick in-memory query is made to determine if the page is subject to a workflow, wether or not the page is in a space using the plugin.
Version History
Version
Date
State
License
Price
2.0.3
(#27)
12 Jun 2009
Stable
Commercial
Buy
Release Notes
2.0.2
(#26)
11 Apr 2009
Stable
Commercial
Buy
Release Notes
2.0.1
(#25)
14 Mar 2009
Stable
Commercial
Buy
Release Notes
2.0
(#24)
25 Jan 2009
Stable
Commercial
Buy
Release Notes
1.4.7
(#23)
11 Nov 2008
Stable
Commercial
Buy
Release Notes
1.4.6
(#22)
05 Oct 2008
Stable
Commercial
Buy
Release Notes
1.4.5
(#21)
18 Sep 2008
Stable
Commercial
Buy
Release Notes
1.4.4
(#20)
10 Sep 2008
Stable
Commercial
Buy
Release Notes
1.4.3
(#19)
08 Sep 2008
Stable
Commercial
Buy
Release Notes
1.4.2
(#18)
26 Aug 2008
Stable
Commercial
Buy
Release Notes
1.4.1
(#17)
11 Jul 2008
Stable
Commercial
Buy
Release Notes
1.4
(#16)
05 Jun 2008
Stable
Commercial
Buy
Release Notes
1.3.4
(#15)
21 Apr 2008
Stable
Commercial
Buy
Release Notes
1.3.1
(#14)
05 Feb 2008
Stable
Commercial
Buy
Release Notes
1.3
(#13)
02 Feb 2008
Stable
Commercial
Buy
Release Notes
1.2.3
(#12)
05 Jan 2008
Stable
Commercial
Buy
Release Notes
1.2.2
(#11)
05 Jan 2008
Stable
Commercial
Buy
Release Notes
1.2.1
(#10)
12 Dec 2007
Stable
Commercial
Buy
Release Notes
1.2
(#9)
08 Dec 2007
Stable
Commercial
Buy
Release Notes
1.1.2
(#8)
09 Nov 2007
Stable
Commercial
Buy
Release Notes
1.1
(#7)
01 Oct 2007
Stable
Commercial
Buy
Release Notes
1.0.1
(#6)
07 Sep 2007
Stable
Commercial
Buy
Release Notes
1.0
(#5)
27 Aug 2007
Stable
Commercial
Buy
Release Notes
0.9.3
(#4)
09 Aug 2007
Beta
Commercial
Buy
Release Notes
0.9.2
(#3)
30 Jul 2007
Beta
Commercial
Buy
Release Notes
0.9.1
(#2)
26 Jul 2007
Beta
Commercial
Buy
Release Notes
| Version | Date | State | License | Price | |||
|
|
12 Jun 2009 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
11 Apr 2009 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
14 Mar 2009 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
25 Jan 2009 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
11 Nov 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
05 Oct 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
18 Sep 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
10 Sep 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
08 Sep 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
26 Aug 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
11 Jul 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
05 Jun 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
21 Apr 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
05 Feb 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
02 Feb 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
05 Jan 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
05 Jan 2008 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
12 Dec 2007 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
08 Dec 2007 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
09 Nov 2007 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
01 Oct 2007 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
07 Sep 2007 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
27 Aug 2007 | Stable | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
09 Aug 2007 | Beta | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
30 Jul 2007 | Beta | Commercial | Buy | |||
|
Release Notes |
|||||||
|
|
26 Jul 2007 | Beta | Commercial | Buy | |||
|
Release Notes |
|||||||







Comments (131)
Nov 06, 2007
Andrei Smolko says:
Roberto, I was under impression that the unapproved content cannot be found usin...Roberto, I was under impression that the unapproved content cannot be found using search engine. I just did a quick test, and I can find the unapproved content. I cannot see it on Published tab, but it would be beneficial if it cannot even find it. Was my assumption/expectation right and there is a configuration problem or a bug? Or it is my expectation is wrong?
Thank you
Nov 06, 2007
Roberto Dominguez says:
It is a limitation of the current solution. I have spent several hours and have ...It is a limitation of the current solution. I have spent several hours and have not found a way of telling confluence what version of a page to index as it happens at a very low level of the API stack as to be able to deal with the version and/or permissions.
I am still working on a solution to this... In the meantime, you could look at the Content Publishing Plugin to publish the content of a different space and to rely on Confluence's content permissions. You can use the {publish} macro at the end of the approvals chain to keep the public space in sync.
Nov 27, 2007
Kenny Tong says:
How to show the "Approvals" tab while using Theme Builder and Confluence?How to show the "Approvals" tab while using Theme Builder and Confluence?
Dec 09, 2007
Roberto Dominguez says:
Look at the Theme builder section in the [~rodogu:Approvals Workflow Configu...Look at the Theme builder section in the [~rodogu:Approvals Workflow Configuration]
Dec 09, 2007
Joshua Wold [Atlassian] says:
Can approvals be setup for Blogs (News) and Attachments as well as Pages?Can approvals be setup for Blogs (News) and Attachments as well as Pages?
Dec 11, 2007
Roberto Dominguez says:
Not yet, but is definitely something that will be added soon. There are a coup...Not yet, but is definitely something that will be added soon.
There are a couple of technical issues that's making difficult to deal with attachments, so I have to work on that.
Dec 16, 2007
Roberto Dominguez says:
News post will come soon. WRT to hiding unpublished pages, this is possible usi...News post will come soon.
WRT to hiding unpublished pages, this is possible using now the [{{\{add-restriction\}}}] and [{{\{remove-restriction\}}}] macros:
{workflow} {approval:Publish|usergroup=approvers} {trigger:pagecreated} {add-restriction:type=View|group=approvers} {trigger} {trigger:pageapproved|approval=Publish} {remove-restriction:type=View} {trigger} {workflow}You could also use the Content Publishing Plugin to publish to different spaces. See Publishing Workflow Tutorial.
Give it a try and send me a note if you need some help.
Jan 08, 2008
Carlos Caballero says:
Hola, Roberto, I created a simple approval workflow from the Admin panel, tried...Hola, Roberto,
I created a simple approval workflow from the Admin panel, tried it in a few pages (which gave a specific state to some approvals in those pages). Then, I deleted the approvals from the admin panel, because I decided to write more specific workflows using the macros themselves.
Now, the pages that were "touched" by the first workflow (the one setup from the Admin panel) retain their workflow/approval indicators, even after I deleted the corresponding approvals. Is there a way to "clean up" those pages, so that the old workflow information doesn't show up any more?
Salu2
cc
Jan 11, 2008
Roberto Dominguez says:
Carlos, At this time, there is no way to remove old approvals. I've created APR...Carlos,
At this time, there is no way to remove old approvals. I've created APRV-68. I will get addressed on 1.3
Saludos
May 02
Ben Aveling says:
Strictly speaking, I don't think it should be possible to delete an old approval...Strictly speaking, I don't think it should be possible to delete an old approval. It might be possible to rescind or cancel an approval, which would have sort of the same effect, but it would leave the whole history in place.
Jan 11, 2008
Ricky Glaze says:
Roberto, Is there a way to change the default text inserted when you add an app...Roberto,
Is there a way to change the default text inserted when you add an approval. What I really want is a list of "reviewer" that can only click on a "reviewed" button. There current status (reviewed/not reviewed) would be displayed beside their name. Once they click reviewed the status updates.
Jan 11, 2008
Roberto Dominguez says:
Not sure if I'm following... what do you mean by the default text? If you have ...Not sure if I'm following... what do you mean by the default text?
If you have more than one reviewer, then I'd create different approvals (either in a workflow or through the Space approvals)
i.e.
{workflow} {approval:John Doe} {approval:Jane Doe} ... {workflow}Jan 11, 2008
Ricky Glaze says:
I am wanting the user to only have a "Reviewed"option, not an approved/rejected....I am wanting the user to only have a "Reviewed"option, not an approved/rejected.Also, I if I have multiple reviewers I do not want the reviewed option to be sequential. Anyone could could say that they have reviewed it at any time.
Jan 11, 2008
Roberto Dominguez says:
I think I follow now... how about something like this: {workflow} {appr...I think I follow now... how about something like this:
{workflow} {approval:Reviewed|group=reviewers_group} {approval:pageapproved|approval=Reviewed} {set-message}Page Reviewed by [~@user@]{set-message} {approval} {workflow}Jan 11, 2008
Ricky Glaze says:
That's great. Thanks.That's great. Thanks.
Jan 11, 2008
Ricky Glaze says:
I see the open APRV on removing obsolete approvals. How can I get the approval o...I see the open APRV on removing obsolete approvals. How can I get the approval off of the page after I have deleted the approval? Do I have to delete and re-create the page?
Feb 02, 2008
Roberto Dominguez says:
Obsolete approvals can now be removed in 1.3Obsolete approvals can now be removed in 1.3
Jan 12, 2008
Appan Ponnappan says:
What about reporting? Are there any suppliers provided which can be used with th...What about reporting? Are there any suppliers provided which can be used with the reporting plug-in macros to extract the approval history information and also to generate a table of pages with their review status?
Jan 12, 2008
David Peterson [CustomWare] says:
To my knowledge, this plugin doesn't publish information for the reporting plugi...To my knowledge, this plugin doesn't publish information for the reporting plugin, but if that data is stored somewhere, it can be made available fairly easily. The best course of action would be to add it to the Approvals Workflow Plugin.
Jul 07, 2008
Hamish Willee says:
Hi I'm interested in this - mechanisms to make it easy for my "reviewers" to kn...Hi
I'm interested in this - mechanisms to make it easy for my "reviewers" to know what needs reviewing. From the above it seems that you can set up automatic email notification on changes - correct?
Is ti possible to set up RSS feeds that search on state - ie what I'd like as a reviewer is to be able to be notified of any issues that have been modified in terms of approvals.
It also looks like you can use the approvals management to list all files in the space and their current state - correct?
1. Who can view this?
2. Can it be filtered to just show the unpublished ones?
Regards
Hamish
Jul 07, 2008
Roberto Dominguez says:
Hamish, You can set up a trigger to send an email to somebody when an approved ...Hamish,
You can set up a trigger to send an email to somebody when an approved page gets updated. I.e. lets say you have stored the reviewer in the metadata value Reviewer of the page:
{trigger:pageupdated|haspproval=Reviewed} {send-email:user=@Reviewer@|subject=Page updated}@page@ has been modified and has to be re-approved{send-email} {trigger}Note that the trigger will fire when the page is updated and the Reviewed approval is current, therefore only the first time is modified after being approved.
The RSS feed sounds like a good idea, could you create a feature request on http://developer.atlassian.com/jira/browse/APRV ?
The plugin already provides a report on pending approvals (Browse Space -> Approvals), but there is no way of filtering per user. I've created APRV-122 and will try to address it soon. I also created APRV-123 for integrating with the reporting plugin.
Jan 18, 2008
Carlos Caballero says:
Roberto, you say above that "Read-only users have the latest approved version as...Roberto, you say above that "Read-only users have the latest approved version as their default view.". Can you tell me what exactly is meant by "Read-Only"?
FALSE ALARM: I had my server's workflow plugin configuration set to "History and drafts can be accessed by: Space administrators and contributors". As a result, there was nothing for somebody with just read access to view... Remember to go back if you see a denial of access because of "Inherited Restrictions".
Thanks Roberto for your quick assistance...
Feb 04, 2008
Kev D'Arcy says:
Hi, Are there any plans to allow document level approval instead of space level...Hi,
Are there any plans to allow document level approval instead of space level i.e. to set the list of who the approvers are within a document rather than within a space?
Kev
Feb 04, 2008
Roberto Dominguez says:
Could you elaborate in the scenario and create an issue in Jira? On the meantim...Could you elaborate in the scenario and create an issue in Jira?
On the meantime, you could do something like this:
{worklow:space=SPACE|lable=reviewable} {approval:Approver 1} {approval:Approver 2} {approval:Approver 3} {workflow}Then, whenever you want a page to be approved, you add the label. Have a look also at the [Workflow Demo] to see how you can use Metadata in the page to define who the approver should be (see how a segment containing the metadata values in inserted at the beginning of each page).
Let me know if that works.
Feb 05, 2008
Jim Barrick says:
Roberto, We're looking for a way to use this macro to "Firewall" management co...Roberto,
We're looking for a way to use this macro to "Firewall" management comments. Specifically, we're going to create two parallel spaces, "Private" and "Public". After content is created, commented upon, and approved in the "Private" space, I'd like to publish the resulting pages to the "Public" space, *without* the comments.
When pages are published to different spaces, are the comments published right along with them, or just the pages by themselves?
Jim
Feb 05, 2008
Roberto Dominguez says:
That's exactly the use case used in the Publishing Workflow Tutorial, so have a ...That's exactly the use case used in the Publishing Workflow Tutorial, so have a look. No comments are not published to the public space.
Feb 10, 2008
Matt Bovett says:
Hmm, why are the trash cans missing half the time on the List Page Approvals pag...Hmm, why are the trash cans missing half the time on the List Page Approvals page?
And can anybody see anything wrong with this code? Is it missing any pieces of the puzzle? I tried to have two different approvals but it got so complicated and I got lost in my code. I figure I should perfect one approval first.
{workflow:spaces=myspace} {approval:Editor|usergroup=editors} {trigger:pagecreated} {set-label:label=needs_editor_approval} {set-message:style=warning}*This draft needs to be reviewed and approved before it can be published.* Until an editor approves this draft, it will only be visible to the author and editors. This draft can be updated by the author while awaiting editor approval.{set-message} {add-restriction:type=View|user=@user@} {add-restriction:type=Edit|user=@user@} {add-restriction:type=View|group=editors} {add-restriction:type=Edit|group=editors} {trigger} {trigger:pageapproved|approval=Editor} {set-message:style=tip}*An editor has approved and published this draft.* The editor left this comment: {quote}_@approvalcomment@_{quote}{set-message} {remove-restriction:type=View|user=@user@} {remove-restriction:type=Edit|user=@user@} {remove-restriction:type=View|group=editors} {remove-restriction:type=Edit|group=editors} {remove-label:label=needs_editor_approval} {set-label:label=published} {trigger} {trigger:pagerejected|approval=Editor|usergroup=editors} {set-message:style=warning}*An editor has rejected this draft.* Until an editor reviews and approves this draft, it will only be visible to the author and the editors. The editor left this comment: {quote}_@approvalcomment@_{quote}{set-message} {remove-label:label=published} {set-label:label=needs_editor_approval} {add-restriction:type=View|user=@user@} {add-restriction:type=Edit|user=@user@} {add-restriction:type=View|group=editors} {add-restriction:type=Edit|group=editors} {trigger} {trigger:pageupdated|haslabel=published|usergroup=!editors} {set-message:style=info}*The approved, published version of this page was modified.* An editor will need to approve the change(s) made to the page. The modifier can continue to update the draft if needed while awaiting editor review and approval.{set-message} {remove-label:label=published} {set-label:label=needs_editor_approval} {add-restriction:type=View|user=@user@} {add-restriction:type=Edit|user=@user@} {add-restriction:type=View|group=editors} {add-restriction:type=Edit|group=editors} {trigger} {trigger:pageupdated|haslabel=needs_editor_review|usergroup=!editors} {set-message:style=info}*Unapproved draft successfully modified.* An editor still needs to approve this draft. The page can still be updated by the modifier, if needed, while it awaits editor review and approval.{set-message} {trigger} {trigger:pageupdated|haslabel=needs_editor_review|usergroup=editors} {set-message:style=info}*An editor is editing this draft.* The page can still be updated by the modifier, if needed, while the editor is reviewing and editing the page.{set-message} {trigger} {workflow}Feb 11, 2008
Roberto Dominguez says:
Matt, The trash cans appear only on those approvals checks that can be deleted:...Matt,
The trash cans appear only on those approvals checks that can be deleted: you can only delete approvals that are not longer defined, neither in a workflow nor as Space Approvals.
What are you trying to do with the workflow above? what is it that is not working?
Feb 11, 2008
George Pollard says:
Hi Roberto, I'm attempting to use Approvals Workflow plugin with the latest 2.8 ...Hi Roberto, I'm attempting to use Approvals Workflow plugin with the latest 2.8 beta version (there was a Confluence bug that was a showstopper for us), but I am receiving the following error:
and similarly,
Is it possible you could look into this?
Thanks
Feb 11, 2008
Roberto Dominguez says:
It is not compatible yet. Please note that 2.8 is still a development release, a...It is not compatible yet. Please note that 2.8 is still a development release, and it is very early as the development environment is not stable yet either.
I tried it and got the same error as you, There is a blocking issue, see/watch CONF-10602.
Feb 11, 2008
George Pollard says:
Ok, thanks for the quick replyOk, thanks for the quick reply
Feb 29, 2008
Simon Wheatley says:
Hi, I got similar (maybe?) errors using Confluence 2.7.1: Label watchdog Error...Hi, I got similar (maybe?) errors using Confluence 2.7.1:
Label watchdog
and Approvals Actions
For the moment I'm going to try downgrading Confluence to 2.7 and see where that gets me. Should I raise a bug?
Mar 01, 2008
Roberto Dominguez says:
there is an issue with the Scaffolding plugin. See APRV-14 for the work around.there is an issue with the Scaffolding plugin. See APRV-14 for the work around.
Mar 01, 2008
David Peterson [CustomWare] says:
The issue with Scaffolding has been resolved with the just-released Scaffolding ...The issue with Scaffolding has been resolved with the just-released Scaffolding 2.7-dr9. You will, however, have to upgrade to Confluence 2.7 to install it.
I'm not sure if the labelWatchdog issue is the same problem though - I haven't seen that particular error before.
Feb 14, 2008
Sasi says:
Hi, I am new to confluence. I am using Atlassian confluence 2.7.1. We are...Hi,
I am new to confluence. I am using Atlassian confluence 2.7.1. We are trying to use approvals work flow plugin. Even though I added or defined all the approvals in the " Browse space- space admin" I dont see approval checks in any page on space. I dont see any errors. Is approval work flow plugin compatible with confluence 2.7?
Any help would be appreciated.
thanks
Feb 19, 2008
Tyler Hone says:
Is there a way to allow the final reviewer to make edits and then approve the do...Is there a way to allow the final reviewer to make edits and then approve the document without the document being submitted to the author for re-approval? For example, if the author and reviewer(s) miss a minor typo, could the final reviewer correct the typo and publish the document without restarting the entire workflow approval process?
Feb 21, 2008
Roberto Dominguez says:
Not at this time. What you can do is to include the final reviewer part of all g...Not at this time. What you can do is to include the final reviewer part of all groups, so he/she could always approve.
I am still trying to figure out a better way of doing it... will think about this one...
Mar 13, 2008
David Dembo says:
Something like an 'Approve with Minor Changes' option perhaps? I don't know if i...Something like an 'Approve with Minor Changes' option perhaps? I don't know if it is possible, but in such a case it'd be great if the original user's details were preserved... e.g. the last edit should show the user that made the contribution, rather than the moderator that corrected a typo.
Something like a {halt} macro could also do the trick? e.g.:
{trigger:pageupdated|usergroup=!moderators} ... actions/etc for normal users {trigger} {trigger:pageupdated|usergroup=moderators} ... actions/etc for moderators {halt} {trigger}... where the above would execute things like {send-email}, but be halted before the page triggers any workflows/approvals again.
It'd also be handy for addressing things like the problem with protected labels if it could be used to prevent any other triggers from being executed, e.g.:
{trigger:labelremoved|label=example} ... actions/etc {set-label:example} {halt} {trigger}Feb 20, 2008
Matt Bovett says:
I have uninstalled and disabled this plugin a few times, because it wasn't ready...I have uninstalled and disabled this plugin a few times, because it wasn't ready to be enabled when people were using my wiki.
But now I'm getting the errors below when trying to install
(The main error says there was an error loading the plugin, see log for more information or something)
Configuration manager
Error: There was a problem loading the module descriptor: com.comalatech.confluence.workflow.WorkflowConfigurationManager.
Can not overwrite an existing bean definition: workflowConfigurationManager Enable
(I'm editing this post now and putting manual linebreaks in the two errors below because they didn't word-wrap)
Workflows initializer
Error: There was a problem loading the module descriptor: com.comalatech.confluence.workflow.WorkflowsInitializer.
Error creating bean with name 'workflowsInitializer' defined in null: Error setting property values; nested exception is
org.springframework.beans.PropertyAccessExceptionsException: PropertyAccessExceptionsException (2 errors); nested propertyAccessExceptions
are: [org.springframework.beans.TypeMismatchException: Failed to convert property value of type
[com.comalatech.confluence.workflow.WorkflowConfigurationManager] to required type [com.comalatech.confluence.workflow.WorkflowConfigurationManager]
for property 'workflowConfigurationManager'], [org.springframework.beans.TypeMismatchException: Failed to convert property value of type
[com.comalatech.confluence.workflow.WorkflowManager] to required type [com.comalatech.confluence.workflow.WorkflowManager] for property 'workflowManager']
On a workflow page, these errors appear:
Unable to render content due to system error: Error creating bean with name 'com.comalatech.confluence.workflow.macros.WorkflowMacro' defined in null:
Error setting property values; nested exception is org.springframework.beans.PropertyAccessExceptionsException: PropertyAccessExceptionsException
(2 errors); nested propertyAccessExceptions are: [org.springframework.beans.TypeMismatchException: Failed to convert property value of type
[com.comalatech.confluence.workflow.WorkflowConfigurationManager] to required type [com.comalatech.confluence.workflow.WorkflowConfigurationManager]
for property 'workflowConfigurationManager'], [org.springframework.beans.TypeMismatchException: Failed to convert property value of type
[com.comalatech.confluence.workflow.WorkflowManager] to required type [com.comalatech.confluence.workflow.WorkflowManager] for property 'workflowManager']
I guess really, the plugin did install, just not correctly. When I try to uninstall, I get this error:
Error creating bean with name 'com.comalatech.confluence.workflow.macros.AwpConfigPlugin' defined in null: Error setting property values; nested
exception is org.springframework.beans.PropertyAccessExceptionsException: PropertyAccessExceptionsException (1 errors); nested propertyAccessExceptions
are: [org.springframework.beans.TypeMismatchException: Failed to convert property value of type [com.comalatech.confluence.workflow.WorkflowConfigurationManager]
to required type [com.comalatech.confluence.workflow.WorkflowConfigurationManager] for property 'workflowConfigurationManager']
Any ideas?
Feb 21, 2008
Roberto Dominguez says:
The plugin loader something get hiccups when installing/uninstalling, so try res...The plugin loader something get hiccups when installing/uninstalling, so try restarting. Remove the jar file (if exists) from the temp directory in your data directory.
Jun 18, 2008
Jamie says:
I think I'm having a similar problem. The plugin was working correctly for...I think I'm having a similar problem. The plugin was working correctly for me and then as I was continuing to test, the message "Error getting approvals" started to show up in the place of the approvals line on all pages. I've tried uninstalling/reinstalling the plugin as you suggested and restarting, but I am still getting the same error. Is this something that you've seen before?
Jun 18, 2008
Roberto Dominguez says:
Jamie, What do you see in the error logs? Could you submit an issue in http://d...Jamie,
What do you see in the error logs? Could you submit an issue in http://developer.atlassian.com/jira/browse/APRV and we take it from there? Please include the logs, what version you are trying, version of confluence and other envirnment information (i.e. are you using the scaffold plugin?)
Try uninstalling, removing the jar from the temp dir, and check in the PLUGINDATA table data, look for the approvals workflow key and remove the row. Then restart, confirm the plugin is not there, and install again. Again, the plugin manager sometime does not remove the plugins completely.
Jun 19, 2008
Jamie says:
Hi Roberto, I looked in the PLUGINDATA table and there was not a row for this p...Hi Roberto,
I looked in the PLUGINDATA table and there was not a row for this plugin. I removed the JAR from the temp dir, restarted and tried to install again. It still isn't working. I noticed that the workflow macros are enabled when I reinstall (which should be disabled by default) - so something isn't getting deleted in the uninstall. Not sure where else to look.
I created issue APRV-113 to track this. Any ideas on what I should try next?
Thanks.
Mar 07, 2008
Leandro Hermida says:
Sorry if I'm a complete bonehead, I can't get the plugin to work just for a sing...Sorry if I'm a complete bonehead, I can't get the plugin to work just for a single page. I create a test page with this markup:
{approval:Author|weight=1|final=false} {approval:Reviewer 1|weight=2|hasapproval=Author|final=false} {approval:Reviewer 2|weight=3|hasapproval=Reviewer 1|final=false} {approval:Approver|weight=4|hasapproval=Reviewer 2} Hello here is the test page.Yet after saving I don't see the Approvals tab or anything on the page showing how someone approves. What could I be doing wrong?
thanks,
Leandro
Mar 07, 2008
Roberto Dominguez says:
You need to apply the required changes on the layout (see [~rodogu:Approvals...You need to apply the required changes on the layout (see [~rodogu:Approvals Workflow Configuration]) or for testing you can just add {workflow-include} in the top of the page.
Mar 07, 2008
Leandro Hermida says:
Thank you for the quick reply. It works now on my test page using {workflow-inc...Thank you for the quick reply. It works now on my test page using {workflow-include}. A second question, can I apply an approval workflow to a certain subset of a space, like at a page node and all children below it?
Leandro
Mar 07, 2008
Roberto Dominguez says:
What you have tried was the Page approvals. If you want approvals to be applied ...What you have tried was the Page approvals. If you want approvals to be applied in all the pages of a space, then you need to either define Space Approvals (Browse Space -> Advanced -> Space Approvals) or through a workflow. See the [~rodogu:Workflow Tutorial].
You would need to make the Layout changes as described in [~rodogu:Approvals Workflow Configuration] so the approvals line appears in all pages.
Mar 08, 2008
Leandro Hermida says:
Hello Roberto, Thank you, yes this I saw in the tutorial when you want to do sp...Hello Roberto,
Thank you, yes this I saw in the tutorial when you want to do space-wide approval workflows. But my question was is there the in between, meaning a way to apply an approval workflow to a subset of a space, only a part of the space tree?
Leandro
Mar 10, 2008
Ken Emmanuel says:
Hello, I'm currently testing out this plugin. However, I would like to be...Hello,
I'm currently testing out this plugin. However, I would like to be sure it can meet my need. Can this plugin be used to mask unapproved content i.e. limit the viewing of unapproved content (to approval authorities) pending approval, upon which, restriction is lifted and the page/content becomes viewable by all intended?
Thanks
Ken
Mar 27, 2008
Roberto Dominguez says:
Ken, There are two way of doing that: By defining the last approval as 'Final',...Ken,
There are two way of doing that: By defining the last approval as 'Final', either in a workflow or in Space Approvals, or using the Content Publishing Plugin as per the Publishing Workflow Tutorial.
If you define an approval as final, drafts could be available to Contributors (approvers) only and the latest approved version to the rest.
Apr 01, 2008
Ricky Glaze says:
Roberto, I am trying to use the following macro. I want to have reviewers for e...Roberto,
I am trying to use the following macro. I want to have reviewers for each page. They will not approve the page, but just denote that they reviewed it. I want the page to display each reviewer, however I can only get it to show the most recent reviewer. How can I change this to insert a new section for each reviewer?
[workflow}
[approval:Reviewed|user=[~user], reviewer1, reviewer2}
[approval:Page Reviewed|hasapproval=Reviewed|final=true|weight=100}
[trigger:pagecreated}
[set-message:style=note}Under Review[set-message}
[include-segment}
[metadata-list}
[metadata-list}
|| Author | [~user] |
|| Reviewers | [~reviewer1], [~reviewer2] |
[metadata-list}
[metadata-list}
[include-segment}
[trigger}
[trigger:pageapproved|approval=Reviewed}
[include-segment}
Page Reviewed by [~user]
[include-segment}
[trigger}
[trigger:pageupdated}
[set-message:style=warning}Page is being updated, see latest approved version[set-message}
Page is being updated
[trigger}
[workflow}
Sorry, I haven't figured out how to type in macros without replacing the { with something else.
Apr 02, 2008
Ricky Glaze says:
Well, I have gotten a little further. Basically what I want is a listing on a p...Well,
I have gotten a little further. Basically what I want is a listing on a page that shows all of the approvers and their status (undecided, approved, rejected). What can I add to this to give me a list of the reviewers and their status? I want a quick way to view who is holding up the approval.
{metadata-list:hidden=true} || Reviewers | [~reviewer1], [~reviewer1] | {metadata-list} {workflow} {approval:Author|user=@Author@} {approval:Reviewers|hasapproval=Author|user=@Reviewers@} {trigger:pagecreated} {set-message:style=info} Under Review. {set-message} {include-segment} {metadata-list} || Author | [~@user@] | || Reviewers | @Reviewers@ | {metadata-list} {include-segment} {send-email:user=@Author@|subject=Document Created} You have created @page@. It is currently awaiting your approval. {send-email} {trigger} {trigger:pageapproved|approval=Author} {send-email:user=@Reviewers@|subject=@page@ Document Ready for Review} The document @page@ has been approved by the author ([~@user@]) and is ready for you to review. {send-email} {trigger} {trigger:pageapproved|approval=Reviewers} {send-email:user=@Author@|subject=@page@ Document Approved} You have approved your page, @page@. It is now under review by [~reviewer1] and [~reviewer1]. {send-email} {trigger} {trigger:pageupdated} {set-message:style=warning} Page is being updated, see latest approved version. {set-message} {send-email:user=@Author@|subject=@page@ Document Updated} @page@ has been updated. Please review it again. {send-email} {trigger} {trigger:pagerejected|approval=Reviewers} {send-email:user=@Author@|subject=@page@ Document Approved} Your page, @page, was rejected by @user@. {send-email} {trigger} {workflow}Thanks,
Ricky
Apr 02, 2008
Roberto Dominguez says:
[{{\{send-email\}}}] can only take one at a time. This will be addres...Have a look at this approach:
{workflow} {approval:Author} {approval:Reviewer I|hasapproval=Author|user=@Reviewer I@} {approval:Reviewer II|hasapproval=Author|user=@Reviewer II@} {approval:Final|hasapproval=Reviewer I|hasapproval=Reviewer II} {trigger:pagecreated} {metadata:Reviewer I}[~emendator]{metadata} {metadata:Reviewer II}[~primus]{metadata} {include-segment} || Reviewer I | {metadata-from:Reviewer I} | || Reviewer II | {metadata-from:Reviewer II} | {include-segment} {trigger} {trigger:pageapproved|approval=Author} {set-message}@page@ approved by @user@ now has to be approved by @Reviewer I@ and @Reviewer II@ {set-message} {trigger} {workflow}Note that the value name should not contain numbers this is because of APRV-18 Which will be fixed in the next release. This restriction applies only for metadata value, not the approval names, but I kept the same name for consistency.
Apr 02, 2008
Ricky Glaze says:
Roberto, I am looking for a way to streamline the workflow creation process.Wit...Roberto,
I am looking for a way to streamline the workflow creation process.Without the ability of sending mail to multiple people I need to find a way to write a macro to write each send-email statement. Basically I am going to have to write a template with macros to create a workflow definitions page. Right?
Also, what about the "status" section I would like to make? Is there any way to get the status of each reviewer? I want an easy way to see who is holding up the approval process. I do not want to make a separate approval for each person, but rather set user = a group name.
Thanks again,
Ricky
Apr 02, 2008
Ricky Glaze says:
Oh, and if that wasn't enough I also want to e-mail the Author periodically with...Oh, and if that wasn't enough I also want to e-mail the Author periodically with a list of who is yet to approve the page. I don't think that I am going to get that, but I thought I'd ask about it.
Apr 02, 2008
Roberto Dominguez says:
Right now there is no way of handling multiple approvers in a single approval. A...Right now there is no way of handling multiple approvers in a single approval. APRV-76 has been submitted for this new feature. Feel free to elaborate and to vote for it.
The example I posted above is the closest you can get now.
In the next version of the plugin you will be able to send email to a group or list of users.
Another option would be using label workflows (workflows associated to labels) this way users would enable the required workflow (and thus, approvals) by just adding labels, but again, you will be having one Approval per Approver.
Apr 02, 2008
Ricky Glaze says:
Does anyone have any experience using templates with this plug-in? I need a way ...Does anyone have any experience using templates with this plug-in? I need a way for the users to be able to choose the users for the workflow from a list of current users. I need to basically make the entire operation very simple; click a few buttons and have a workflow.
Thanks,
Ricky
Apr 09, 2008
Thomas De Wolf says:
it looks very cool but I have the following questions What happens if you remov...it looks very cool but I have the following questions
What happens if you remove a page, does it still requires an approval before it is actually removed?
What happens if you rename or move a page, does it still requires an approval before it is actually moved or renamed?
Apr 15, 2008
Matthew Leaver says:
Hi Roberto, are you able to give an indication on when compatibility with...Hi Roberto,
are you able to give an indication on when compatibility with Confluence 2.8 may arrive?
I am on the cusp of upgrading from 2.5.7 to 2.7.1 so I'm trying to judge if I should continue with that or go to 2.8 instead.
I did notice that you mention a blocking issue, but I'm afraid I couldn't view those details.
many thanks
Matt.
Apr 16, 2008
David Page says:
I would love to know this as well. We are using this excellent plugin for a dev...I would love to know this as well.
We are using this excellent plugin for a developer portal. Confluence 2.8.0 has some new features that will really be most useful for us - so we want to start testing with 2.8.0 asap.
Apr 21, 2008
Roberto Dominguez says:
1.3.4 now supports 2.8.0.1.3.4 now supports 2.8.0.
Apr 17, 2008
Matt Bovett says:
Is there any way to add the name of the person who adds a particular label to a ...Is there any way to add the name of the person who adds a particular label to a page, possibly using the trigger macro and the set-message macro or something? Maybe metadata?
Apr 21, 2008
Roberto Dominguez says:
You can use something like this: {workflow} {trigger:labeladded|label=chee...You can use something like this:
{workflow} {trigger:labeladded|label=cheese} {set-message}The label has been added by @user@{set-message} {trigger} {workflow}However, at this time, there is no way storing it aas metadata. I've created APRV-88 to implement a way of doing this.
Apr 24, 2008
Matt Bovett says:
This is neat, but unfortunately we don't have much use for it since we use Singl...This is neat, but unfortunately we don't have much use for it since we use Single Sign-On, and all of our usernames are numbers. We have everyone's real name in their profile, but most plugins don't seem to be able to call those.
Will (userrealname) be added eventually? (or something similar)
Apr 21, 2008
Bruno Duarte says:
Hi Roberto, I can't seem to get the plugin to work with news item. Gave author...Hi Roberto,
I can't seem to get the plugin to work with news item.
Gave authorization, created the correct workflow, added the macro to the theme but when I create a new blog post nothing happens! I only have triggers for blog posts and I see the workflow control in normal pages (weird!) but not on a blog post page!
Can you write a page with examples please? Thank you.
Apr 22, 2008
Roberto Dominguez says:
Bruno, Here is a simple example. I will be publishing a more meaningful example...Bruno,
Here is a simple example. I will be publishing a more meaningful example soon.
{workflow} {approval:Blog Approval|showinpages=false} {trigger:newsapproved|approval=Blog Approval} {set-message}@page@ approved{set-message} {trigger} {trigger:newscreated} {set-message}News created by @user@, email will be sent{set-message} {send-email:user=@user@|subject=Thank you for creating a news post}Link is @page@{send-email} {include-segment} {tip}This segment has been inserted{tip} {include-segment} {trigger} {trigger:newsupdated} {set-message}News updated{set-message} {trigger} {trigger:newsrejected|approval=Blog Approval} {set-message}News rejected{set-message} {trigger} {workflow}Apr 26, 2008
Matt Bovett says:
I added the feedback in this comment to this page: Allow additional Conditions ...I added the feedback in this comment to this page:
Allow additional Conditions & logic to be used in {workflow} macros http://developer.atlassian.com/jira/browse/APRV-52
But I thought I'd post it here too in case I'm way off base.
I'd like to be able to say something like:
{workflow:space=myspace|label=!nocomments,!noworkflow|title=Tier 2 Home}
That would mean:
The workflow will be active on the space MYSPACE on any page under the TIER 2 HOME page that does not have the NOWORKFLOW label or the NOCOMMENTS label.
(This is not really a real-life scenario, but comes close.)
One wall I've run into is...
I can't use the pagecreated trigger to add a label to a page when a page is created that has a sticky label automatically added to it with the Label Management plugin.
I like making workflows active only if a certain label is on the page, but there's no way to enforce the workflow this way because you can't use the pagecreated trigger in a label-based workflow. I hope there will be some way around this soon...
Another wall I've run into is there doesn't seem to be a way enforce restrictions in a label-based workflow until a page is updated, since, again, label-based workflows don't support the pagecreated trigger.
And you can't seem to use a trigger with the labeladded event and make the addedlabel a sticky label. The workflow doesn't consider sticky labels added labels and thus doesn't execute the trigger on the pages that inherit the sticky label. Sadness all around.
I need to be able to make a workflow that automatically restricts a page when it is created, but only if it has a certain label on it (perhaps a sticky label added by the Label Management plugin). Or at least only if its under a certain parent page if the former won't ever be possible.
All of my issues seem to come down to the fact that I am starting to have to maintain two different types of approval workflows for two different groups within the same space. This is the reason why I can't just make a space-wide workflow.
Apr 28, 2008
Matt Bovett says:
Why can't I use this in a {set-message} or {send-email} or {set-restriction} mac...Why can't I use this in a {set-message} or {send-email} or {set-restriction} macro?
{metadata-from:Last Changed By}
{metadata-from:Author}
etc
It's useless to use {include-segment} to set your own metadata because the metadata doesn't get overwritten. It just starts piling up and it starts calling obsolete data.
Just wondering! Thanks!
May 06, 2008
Roberto Dominguez says:
See my note above on APRV-88 which will be addressed on 1.4See my note above on APRV-88 which will be addressed on 1.4
May 05, 2008
David Dembo says:
You've probably already seen this but just in case, thought you might like to ch...You've probably already seen this but just in case, thought you might like to check out this plug-in being entered into the CODEGEIST competition: http://confluence.atlassian.com/display/CODEGEIST/Confluence+Page+State+Plugin
Looks like there are some similarities with this plug-in... I see a good opportunity for these two plug-ins to complement each other nicely though - particularly this plug-in's workflow engine and the other plug-in's capability to handle multiple custom statuses other than approve/reject for example.
Thought it was at least worth a mention!
May 18, 2008
David Dembo says:
Just thought I'd share a quick tip - if you have the Reporting plug-in installed...Just thought I'd share a quick tip - if you have the Reporting plug-in installed, you can create a link to the published version of a page with the following:
{report-link:content:id|prefix=/pages/releaseview.action?pageId=}published version{report-link}So for example, you could add something like this in a trigger:
{set-message:style=note} (!) Changes in this draft have not yet been reviewed by a moderator. If you are editing this page, you may continue to make changes in the meantime. If you only wish to view this page, we recommend referring to the currently {report-link:content:id|prefix=/pages/releaseview.action?pageId=}published version{report-link}. {set-message}Roberto, what do you think about setting up a 'Tips & Tricks' page for users to add this sort of thing to? There's a lot of neat things you can do with the plug-in - could end up with a pretty decent resource for users...
May 23, 2008
Roberto Dominguez says:
Thanks for the tip. I will set up something once I get 1.4 out.Thanks for the tip. I will set up something once I get 1.4 out.
Jun 27, 2008
Wiki User says:
Hi Roberto, I am trying to implement multi-layered approval workflow for each p...Hi Roberto,
I am trying to implement multi-layered approval workflow for each page created in the workspace.
Page Created > Approval 1 > Approval 2 > Approval 3 > Approval 4 > Approval 5 > publish
Thanks!
Jul 01, 2008
Roberto Dominguez says:
Workflow will be something like: {workflow} {approval:Approval 1} {ap...Workflow will be something like:
{workflow} {approval:Approval 1} {approval:Approval 2|hasapproval=Approval 1|group=level-2,level-3,level-4,level-5} {approval:Approval 3|hasapproval=Approval 2|group=level-3,level-4,level-5} {approval:Approval 4|hasapproval=Approval 3|group=level-4,level-5} {approval:Approval 5|hasapproval=Approval 4|group=level-5} {trigger:pagecreated|group=level-2} {approve-page:Approval 1} {trigger} {trigger:pagecreated|group=level-3} {approve-page:Approval 1} {approve-page:Approval 2} {trigger} {trigger:pagecreated|group=level-4} {approve-page:Approval 1} {approve-page:Approval 2} {approve-page:Approval 3} {trigger} {trigger:pagecreated|group=level-5} {approve-page:Approval 1} {approve-page:Approval 2} {approve-page:Approval 3} {approve-page:Approval 4} {trigger} {workflow}Jul 10, 2008
Jamie says:
Where are page approvals stored in the database? Is there a way for an adm...Where are page approvals stored in the database? Is there a way for an administrator to remove old approvals from a page (say a customer made a mistake and applied the wrong workflow - or accidentally applied two label workflows - or just wants to restart a page over again)?
Also, what happens if a page that is approved gets restored to an old (unapproved) version? In preliminary testing of this, the approval icons still show, but they show the version number of the page that was approved (not the current reverted version). Can someone explain how this process is supposed to work? Maybe I am not interpreting it correctly.
Thanks!
Jul 10, 2008
Roberto Dominguez says:
The approvals are stored as Content Properties, which are not associated to page...The approvals are stored as Content Properties, which are not associated to page versions. This means that if you restore an old version of the plugin, it is not different as if you had typed the old version again and it is handled by the plugin as yet another version of the page.
You can remove approvals for pages, but only those approvals that do not longer apply to the page. For example, let's say you defined a workflow Approval Reviewer and gave a couple of approvals to the page. Then you decide to change the approval name to Peer Reviewer. If you go to the Approvals Tab for the page, you will find you are able to remove the Reviewer approvals.
Regards
Jul 10, 2008
Jamie says:
On my Approvals tab, I do not have an option to remove approvals. There is...On my Approvals tab, I do not have an option to remove approvals. There is a column called "Action" but there are no actions listed under that column.
Also, when you say they are stored as Content Properties, are they available in the database anywhere? I'm just trying to get a handle on how everything works for our backup processes, etc. If I could see where things are stored I think it would be reassuring.
Jul 31, 2008
Thomas Krug says:
I activated my workflow on an existing space with quite a few pages (~50). As fa...I activated my workflow on an existing space with quite a few pages (~50). As far as I have found out I have to got through each and every page making the initial approvals manually (since all pages are now drafts and not accessible to users without edit permission).
Is there a way to automatically set the final approval on all pages in the space?
Aug 04, 2008
Roberto Dominguez says:
Mass-approvals is not supported yet... There are work-arounds, but to be honest,...Mass-approvals is not supported yet... There are work-arounds, but to be honest, it might be simpler going through those 50 pages.
Version 1.5 will have ways to deal with this.
Aug 01, 2008
Thomas Krug says:
One more problem/queation: I have a two stepworkflow. I want to send an email t...One more problem/queation:
I have a two stepworkflow. I want to send an email to the user who approved Step 1 in case Step 2 get's rejected. How do I reference the user in the step 1 approval?
Aug 04, 2008
Roberto Dominguez says:
To do that, you have to set a metadata value when the first approval is given, t...To do that, you have to set a metadata value when the first approval is given, then use that metadata value to send the email when step 2 is rejected.
You have to create a the {metadata-approvalinfo} user macro.
Then you have to create a workflow like this:
{workflow} {approval:First} {approval:Second|hasapproval=First} {trigger:pageapproved|approval=First} {metadata-approvalinfo:First Approver|approvaluser} {trigger} {trigger:pagerejected|approval=Second} {send-email:user=@First Approver@}The page @page@, which you had already approved has been rejected by [~@user@]{send-email} {trigger} {workflow}Version 1.5 will include the {metadata-approvalinfo} user macro, or something similar.
Aug 05, 2008
Thomas Krug says:
Works great, thanxWorks great, thanx
Aug 17, 2008
atrais.risinajums says:
Hello Roberto! I am writing another Confluence plugin that gathers page info...Hello Roberto!
I am writing another Confluence plugin that gathers page information.
I need to determinate programmatically at least which pages are "fully approved" and which are not.
Should I look for this information in PageManager, ContentEntityManager ?
(You have mentioned "The approvals are stored as Content Properties, which are not associated to page versions" )
Please give me a hint!
Aug 18, 2008
Roberto Dominguez says:
Yep, they're stored as Content Properties, so you'd have to use the ContentEntit...Yep, they're stored as Content Properties, so you'd have to use the ContentEntityManager. Look at the properties with the com.comalatech.* key.
You'd have to load and interpret the data... The plugin already has a couple of undocumented macros to be used by other plugins, but at the space level.
I will be documenting the Plugin's "API" in the couple of weeks.
If you create a jira issue with what you want, I could try to sneak it into the next release, so you could just call the macro from within your plugin, and you'd get a Map with the required approvals (Similar to they way XMLRPC API works).
Aug 19, 2008
Hamish Willee says:
Hi All my pages have a banner GIF that is defined in the space as an attachment ...Hi
All my pages have a banner GIF that is defined in the space as an attachment to a single page. If the current version of the page is the published version, then this banner displays well in both the published and non-published versions.
If however I edit a published version, the page in the "published" tab can't render the image - it displays "Unable to render embedded object: File (KnowledgeBase_TechnicalSolution.GIF) not found."
How can I avoid this (other than the obvious of not using an image!)
Regards
Hamish
Aug 20, 2008
John Catalano says:
Template bug with IE 6 and Approvals Workflow? Browsers: IE6.0.2900, FF2.x, FF3....Template bug with IE 6 and Approvals Workflow?
Browsers: IE6.0.2900, FF2.x, FF3.X
I've successfully used workflow, utilizing workflow-include, in all browsers. I've made workflow-include work with the basic, simple templates in Confluence 2.8 for ONLY FF2 and FF3. There seems to be a bug with IE6. In the templates section I click, create page from template, enter my data, and click the "Insert Variables" button at the bottom of the template. Nothing happens. No throbber movement, nothing. In that same page I try approving/rejecting for my approvers that warning icon appears in the lower-left corner. I look at the error and it says:
line: 169
char: 9
error: object expected
code: 0
We only use IE in my company - FF is a personal luxury. What can I do to get around this bug?
Aug 20, 2008
Roberto Dominguez says:
John, I have tested IE6 thoroughly but not with templates... Let me give it a t...John,
I have tested IE6 thoroughly but not with templates... Let me give it a try.
Could you also create a Jira issue on http://developer.atlassian.com/jira/browse/APRV ?
If I get it right, you're saying that although you get no response, the actual page gets created, right? Could you review the wiki markup to confirm is what you expect? Could you also try to recreate a new page not using the template and confirm it works?
Aug 22, 2008
John Catalano says:
Roberto, Your question doesn't quite make sense to me - are you familiar with t...Roberto,
Your question doesn't quite make sense to me - are you familiar with templates? I can create the template with the workflow-include macro on the page. When I go to use the template to create a page, the template renders properly and I can enter my details in the fields I created, however, when I click the "insert variables" button, literally nothing happens. What should happen is the page edit view appears where I name the page and click save (of course along with all the info I added through the template).
Aug 24, 2008
Roberto Dominguez says:
John, Sorry, I misinterpreted your explanation. I've got it now. Yes, there is ...John,
Sorry, I misinterpreted your explanation. I've got it now. Yes, there is a bug. I have created APRV-145 and will address it on 1.4.2, due this week.
Sep 09, 2008
Juris Olekss says:
Hi! There seems to be a strange bug or maybe I am doing something wrong. Th...Hi!
There seems to be a strange bug or maybe I am doing something wrong. The problem is that once an approval workflow is defined for a particular space and it is assigned to a label, suddenly all pages in that space become unapproved and therefore inaccessible to read-only users (even those pages that do not have the label assigned!).
Steps to repeat the problem:
Expected result: Approval line appears for page A and this page becomes invisible to read-only users. Page B is unaffected and is still viewable by read-only users.
Actual result: Approval line appears for page A, but both page A and B become invisible to read-only users.
We are using Confluence 2.8.0 and version 1.4 of this plug-in.
Here is our workflow configuration:
{workflow:label=approve} {approval:Draft completed|weight=10|user=user1} {approval:Ready for publishing|hasapproval=Draft completed|final=true|user=user2|weight=20} {workflow}Thanks for any ideas and sorry if there is something stupid that I have missed!
Sep 10, 2008
Roberto Dominguez says:
Juris, No, you're not losing your marbles, there is a problem here. It has to d...Juris,
No, you're not losing your marbles, there is a problem here. It has to do with the fact that you have set History and drafts can be accessed by to "Space Administrators and Contributors" (which I think is the default) in the plugin's configuration (Administration -> Adminstration -> Approvals Workflow).
What is happening is that by having a final approval in the space, the engine is assuming it is applied to the entire space, not only to labeled pages.
So that's a bug, I've created APRV-154 to deal with it but there is a workaround.
Let me know if it works for you.
Sep 17, 2008
Juris Olekss says:
Thank you for the answer, Roberto! I am looking forward for the fix in 1.5. The...Thank you for the answer, Roberto!
I am looking forward for the fix in 1.5.
The workaround does help in a way (all unlabeled pages become visible to read-only users), but there is a different problem with this workaround: once a labeled page reaches the final approval, from that moment on, read-only users will see draft versions of the page.
Here is how to repeat:
Expected result: Read-only user sees the published version of the page.
Actual result: Read-only user sees the latest draft version of the page.
Is there some other way to fix this?
Thanks!
Sep 23, 2008
Ben says:
Hi, why is this possible? {approval:Author|weight=10} {approval:Reviewer|h...Hi,
why is this possible?
{approval:Author|weight=10} {approval:Reviewer|hasapproval=Author|weight=20} {approval:2nd Review|hasapproval=Author|weight=30} {approval:Editor in Chief|hasapproval=Reviewer|weight=40}1. An user approved the "Author" approval.
2. An user approved the "Reviewer" approval.
3. An user approved the "2nd Review" approval.
4. An user rejected the "Author" approval.
Why can an user reject the "Author" approval although the following approvals are approved?
Sep 23, 2008
Roberto Dominguez says:
The approvals are independent from each other, you can add additional condition...The approvals are independent from each other, you can add additional conditions, to ensure that approvals are available (to either approve or reject) only if the following approval is not there yet:
{workflow} {approval:Author|weight=10|hasapproval=!Reviewer} {approval:Reviewer|hasapproval=Author|hasapproval=!2nd Review|weight=20} {approval:2nd Review|hasapproval=Author|hasapproval=!Editor in Chief|weight=30} {approval:Editor in Chief|hasapproval=Reviewer|weight=40} {workflow}Sep 26, 2008
Patrick Masson says:
We are interested in approving comments, like this, rather than page edits. Sto...We are interested in approving comments, like this, rather than page edits.
Storytelling...
Our campus IT department uses Confluence to identify needs, assess resources, gather functional requirements and communicate during development/implmentation. In order to get input from as many potential users, both those we know about with Confluence ID's and those we may not know about (who by the way always have the best issues to contribute), we leave Confluence open for anonymous commenting (not editing). Each day Confluence pushes out daily reports to the campus were folks can see the current issues under discussion, development and deployment. If they see something that they may have an affinity for, or expertise in, they go to the page and comment on the subject. Project managers are then required to answer the question or embed the issue directly into the body of the Confluence page. The test for addressing the point raised is, "if the person came back to the page, would they ask the same question?"
Unfortunately, even with CAPTCHA on, some bad posts are from humans (students can also participate). We have received several rude or offensive posts and even some from vendors who are promoting, rather than collaborating.
The result is that a few folks want to turn off anonymous comments due to obscenity concerns.
Use Case...
An anonymous user finds a page of interest and would like to contribute an idea. They click on the "Add Comment" button, the comment form appears, and enter their comment through the RTE or Wiki markup form. After placing their comment, they can enter their email address to be notified when the comment is approved and posted and receive notifications of follow-ups. They click "Post" and the browser screen updates notifying the anonymous user that their comments have been submitted to the "page's owner."
Once an anonymous comment is submitted, an email is sent to the "page's owner" (the page's owner would be the person who originally created the page by default or defined later by the original author), with a copy of the comment, an indication of which page was commented on, a place for a response to the comment (if an email was given) and an "Approve" "Deny" option.
If the page owner approves the comment, it is posted just like normal user comments.
If the page is denied, an email is sent back to the anonymous commenter telling them they were denied and, if a response was included, why.
Is there something close to this approach available through the Approvals Workflow Plug-in?
Oct 02, 2008
Roberto Dominguez says:
The plugin does not support moderation of comments at this time. It is a feature...The plugin does not support moderation of comments at this time. It is a feature that has not been as popular as others.
That said, I have implemented comments moderation, but as a custom project. Contact me if you are interested.
Oct 02, 2008
John Catalano says:
Still a bit confused... I've been playing with the Approvals Workflow plu...Still a bit confused...
I've been playing with the Approvals Workflow plugin seriously for about two weeks but there are a few things I can't quite figure out...
{workflow-inlcude:johns-workfow}?
Oct 02, 2008
Roberto Dominguez says:
1.- Value references are used to access either approval, page information, as we...1.- Value references are used to access either approval, page information, as well as metadata values. You can use value reference in triggers, approvals and some actions.
For instance, let's say that in a trigger, you want to send and email to the person that approved the page, and the message should contain a link to that page (note that it is only a segment of a workflow, see the examples for complete workflows):
... {trigger:pageapproved|approval=Da Approval} {send-email:user=@user@|subject=page approved}Thank you for approving @page@{send-email} {trigger} ...We are using @user@ to refer to the current user (aka the person that approved the page) and @page@ for the page link. We use the @s to distinguish them from plain text.
See other examples on [~rodogu:Value Reference].
2.- the {workflow-include} is used to include the approvals line. You need to use it if you are not using the plugin theme or have not made the template changes as per the [~rodogu:Approvals Workflow Configuration] instruction. it is not to include or to refer an actual workflow.
If you want to handle multiple workflows then you have to either define workflow on specific spaces, or associated a workflow to a given label. See the [{{\{workflow\}}} macro] and the [~rodogu:Standard and Fast-track Workflow Example]
3.- No, at this time there is only to options: approved or reject.
4.- You could change where the approvals line it to be shown by changing the theme layout, see the [~rodogu:Approvals Workflow Configuration]. You can also define an alternative CSS (see the [{{\{workflow\}}} macro]) which could help you to control how the approvals are to be shown, but I don't think you can actually change it to be vertical.
I hope this helps, feel free to contact me directly.
Oct 02, 2008
John Catalano says:
1. Thank you! Jumping between multiple macros (which have their own ways to ...1. Thank you! Jumping between multiple macros (which have their own ways to reference data) has made my brain hurt. Thanks for explaining this. Now I just need to wrap my head around that Reporting Macro
2. WOW! This one, too, had my head hurting. I think my usage model is different than what you originally intended, so this one threw me. So, I could think of this as "approvals-include", correct?
3. Got it, thanks. A suggestion - some people are loathe to "reject" anything and so a third option (like "question") would probably go over well.
4. Understood.
New question - can you have multiple workflows for one space? How do you name them? Once named, how do you call them? Here's my scenario... I have one space that holds all the basic project docs for my team's various projects. I am creating a project-request-workflow which will apply only to the project request pages in the space. That works fine now. But what happens when I want to also have a workflow for my project closure documents? How do I have a project-request-workflow and a project-closure-workflow in the same space? How do I then apply those workflows to the appropriate pages?
Oct 08, 2008
John Catalano says:
Metadata woes. I created a workflow that is applied to request tickets. The req...Metadata woes.
I created a workflow that is applied to request tickets. The request tickets are created from a live template that uses the scaffolding macro. Fields such as Business Sponsor (which will be a confluence user id) are defined per the scaffolding syntax (text-data:Business Sponsor|type=line|width=200px}{text-data}). The workflow is supposed to send an email to this Business Sponsor. How do I use in my workflow the Business Sponsor value that I captured in my page?
Oct 13, 2008
Roberto Dominguez says:
John, The plugin only supports metadata set through the Metadata Plugin. I have...John,
The plugin only supports metadata set through the Metadata Plugin. I have created APRV-164 to record the improvement request.
On the meantime, you could add the following line in your template, so the data is stored as metadata too:
{metadata:Business Sponsor|hidden=true}{get-data:name=Business Sponsor}{get-data}{metadata}Haven't tried it yet, but it should work.
Oct 14, 2008
John Catalano says:
It doesn't work. I can make the values input to the text-data field appear at t...It doesn't work.
I can make the values input to the text-data field appear at the bottom of the template (indicating they're being processes) but the workflow doesn't pick up the values from get data: {metadata:BusinessSponsor}{get-data:name=business_sponsor_uid}{get-data}{metadata}
If I substitute the {get-data} stuff with an actual value: {metadata:BusinessSponsor}2358988{metadata}
the workflow is fine and my emails are sent.
Oct 08, 2008
Ryan Smit says:
I have just started using this plug-in and am having some trouble with the appro...I have just started using this plug-in and am having some trouble with the approvals. I have not created any work flows yet, just put some approvals on one of my spaces. What happens is that when i publish a page, and then edit it after that publishing but don't publish the newer draft, the macros on the published page no longer work properly. The macros on the page are a view file macro and a children macro. I don't know if i am just missing something or if i have to make a JIRA request on this issue?
Oct 13, 2008
Roberto Dominguez says:
Ryan, Could you try accessing an older version of a page (not using the publish...Ryan,
Could you try accessing an older version of a page (not using the published link) to see if the macros work?
Could you create a Jira issue on http://developer.atlassian.com/jira/browse/APRV, add an excerpt of the page and anything that might appear in the server logs?
Oct 10, 2008
Johann Richard says:
Hi Roberto I have a question regarding the Approvals Plugin and the Content Pub...Hi Roberto
I have a question regarding the Approvals Plugin and the Content Publishing Plugin: While the CPP will delete attachments on a publish, it does not seem that this is done when a page with deleted attachments is published to its "Live" Space.
This seems a little bit confusing (and inconvenient
) to me as I would expect the same behaviour for publishing via the CPP itself and via the {publish-page} macro.
Could you clarify this a little bit?
Thanks a lot and best regards
Johnan
Oct 13, 2008
Roberto Dominguez says:
Let me have a look, could you add an issue in the Content Publishing Plugin jira...Let me have a look, could you add an issue in the Content Publishing Plugin jira http://developer.atlassian.com/jira/browse/CCPP ?
Oct 13, 2008
Johann Richard says:
Hi Roberto I opened the issue http://developer.atlassian.com/jira/browse/CCPP-2...Hi Roberto
I opened the issue http://developer.atlassian.com/jira/browse/CCPP-24
Best regards
Johann
Nov 04, 2008
Thomas Krug says:
Hi Roberto, I use a couple of set-message macros in my workflow triggers and wo...Hi Roberto,
I use a couple of set-message macros in my workflow triggers and would like them to be only visible to admins and contributors. Via the plugin configuration only the approval lines can be hidden, how can I hide the message boxes?
Best Regards
Thomas
Nov 04, 2008
Thomas Krug says:
Hi, I found a (very minor) bug in the mouse-over text. Workflow configuration l...Hi,
I found a (very minor) bug in the mouse-over text. Workflow configuration looks like:
{approval:Freigabe|hasapproval=Autor|weight=20|user=j105280,j133100|user=!@First Approver@|final=true}I'm using this in order to prevent an author from doing the final approval in a two-step workflow. The mouse-over text for the "Freigabe" Approval reads
"Waiting for approval from j105280, j133100 or j105280"
where j105280 made the author approval.
The j105280 should actually not show up in the mouse-over text at all.
I raised APRV-165
Regards
Thomas
Nov 11, 2008
Daniel Heise says:
Hi, we activated the approval plugin for a space which contains already a lot o...Hi,
we activated the approval plugin for a space which contains already a lot of pages. It seems to us that we have to approve now all pages. Is there a possibility to approve all pages with one or two steps?
thanks,
Daniel
Nov 25, 2008
Roberto Dominguez says:
Have a look at APRV-118 for instructions.Have a look at APRV-118 for instructions.
Nov 25, 2008
jimar arreola says:
Hi Roberto, Is there a way for users to pick the reviewers and approvers dynami...Hi Roberto,
Is there a way for users to pick the reviewers and approvers dynamically?
Nov 25, 2008
Roberto Dominguez says:
Not possible in the current version but you will be able to do it in the next ve...Not possible in the current version but you will be able to do it in the next version. More details to come.
Dec 05, 2008
Daniel Heise says:
Hi, is it possible to use the approval plugin without an approval? I want to de...Hi,
is it possible to use the approval plugin without an approval? I want to define a workflow which only send an email when a new page is created. If I activate such a workflow all users with read-only permissions in this space can't view the pages any more.
Daniel
Dec 05, 2008
Roberto Dominguez says:
You should be able to create such a workflow. I think the problem you're having...You should be able to create such a workflow. I think the problem you're having is caused by they way you have set the access to drafts. Go to Administration -> Administration -> Approvals Workflow and set History and drafts can be accessed by to Anybody.
Dec 15, 2008
jimar arreola says:
Hi Roberto, Just wanted to ask if this is possible, Scenario: Workflow has 3 ap...Hi Roberto,
Just wanted to ask if this is possible, Scenario: Workflow has 3 approvers, so all 3 should approve before going to the next step. What if the user wants to proceed to the next step with only 1 approver (maybe because the other 2 are absent or out of the ofc and the they needed to proceed.)
Thanks,
Dec 16, 2008
Roberto Dominguez says:
Right now, there is no way to bypass the other two approvals... What you can do...Right now, there is no way to bypass the other two approvals...
What you can do is defining an admin users in the [{{\{workflow\}}} macro] (adminusers parameter). The admin user would be able to give any approval, regardless of any user restriction.
Mar 03
Kevin Crosby says:
Can approvals be tied into the page permission settings? I'd like pages to be vi...Can approvals be tied into the page permission settings? I'd like pages to be viewable and editable only by those in the user group that can approve them. The groups will change from state to state.
If this is not part of the approvals plugin, would it work to programmatically move the page to a parent that has the appropriate permissions for the group as part of the state transition?
Mar 03
Kevin Crosby says:
Never mind - http://confluence.comalatech.com/display/AWP/Page+restrictions+work...Never mind - http://confluence.comalatech.com/display/AWP/Page+restrictions+workflow
Mar 06
Aynsley Dunbar says:
Hey Roberto, I have run across a problem in which the approval section at the t...Hey Roberto,
I have run across a problem in which the approval section at the top of the page is not being generated. It looks like I am doing all of the markup correctly as this had worked on another page (I had actually had a problem limiting the pages within the space that were affected by this macro while i was trying it out so it had to be moved) and I am not getting any pink bars telling me otherwise. I have gone over the Markup and nothing is sticking out as a reason why this macro wouldn't work, I have even removed the page limitations on it so it should have affected the whole space.. Any input would be much appreciated.
Mar 09
Roberto Dominguez says:
Have you tried the themes provided by the plugin? Not sure if I follow, could yo...Have you tried the themes provided by the plugin? Not sure if I follow, could you create an issue on http://developer.atlassian.com/jira/browse/APRV ?
Please indicate what version of Confluence and the plugin you are using, the workflow, and macros are you using to display the approvals line.
Mar 13
Aynsley Dunbar says:
Thanks a ton for the advice, everything seems to be in working order now. After...Thanks a ton for the advice, everything seems to be in working order now.
After playing around a bit I have noticed that in the overview for the publish workflow macro you had mentioned that it was created for the purpose of updating information in one test/demo space to later be approved to a public space when it is finalized. Is this macro limited to just publishing information from one space to another, or would it be possible for me to create a parent page within an existing space and utilize the publish workflow macro to have various child pages publish their information to that page?
Mar 19
Roberto Dominguez says:
Aynsley, The publishing is meant to be on the current pages (as Pubished view) ...Aynsley,
The publishing is meant to be on the current pages (as Pubished view) or on a different space. Please look at this page for an explanation of what are you publishing options.
Apr 01
Oleg Artiukh says:
I use Approval Workflow plugin v.2.0.1. At the page that should be approved I ad...I use Approval Workflow plugin v.2.0.1. At the page that should be approved I added {workflow-include} macro, and it renders approving possible actions. There is State link at this part of page, but when I hover mouse over this link, I expect to get workflow image (build with Graphviz plugin), but I get an error (see text below) instead. What may be the problem? What should I edit in graphviz.properties file?
flowchart: No useable executable name defined in graphviz.properties
graph [ fontname="Verdana", fontsize="9", fontname="Verdana", fontsize="9"]
Draft [ fontname="Verdana", fillcolor="#FF8306", fontsize="9", fontname="Verdana", fontsize="9", URL="#node1"]
Draft [ fontname="Verdana", fontsize="9"]
Draft -> "In Approval" [ style="dotted", weight="2", fontname="Verdana", fontsize="9", label="Author"]
"In Approval" [ fontname="Verdana", fontsize="9"]
"In Approval" -> Completed [ style="dotted", weight="2", fontname="Verdana", fontsize="9", label="Manager"]
Apr 01
Roberto Dominguez says:
Make sure that the Graphviz Plugin is installed properly. Note that it requires ...Make sure that the Graphviz Plugin is installed properly. Note that it requires a binary executable to be available in the installation.
Try drawing a couple of chart using the {flowchart} macro first to make sure it's ok.
Apr 02
Oleg Artiukh says:
Ok, many thanks! I've resolved the problem.Ok, many thanks! I've resolved the problem.
Apr 02
Oleg Artiukh says:
I need to add the following macros automatically to all pages: {pagestatus} ...I need to add the following macros automatically to all pages:
{pagestatus} {workflow-include}But I want user (page author) not to add it manually and not to see it at wiki markup. Look's like these macros should be hidden at the wiki markup, hardcoded...
I tried to use template, than add it to the workflow property headertemplate , but these macros do not display. Also the way editing layout didn't help.
At the first presentation of this page I've noticed, that page author do not add macros to the page, but approving is available.
How can I resolve the problem?
Apr 02
Roberto Dominguez says:
Oleg, Look at the Layout Configuration section on the Plugin's documentation pa...Oleg,
Look at the Layout Configuration section on the Plugin's documentation page.
Roberto
Apr 03
Oleg Artiukh says:
Thank you Roberto. It's my bad habit not to read whole documentation before...Thank you Roberto. It's my bad habit not to read whole documentation before using something
Jun 18
Harish says:
Hi, I am new to confluence, I found this plugin in useful, Our requirement i...Hi,
I am new to confluence, I found this plugin in useful,
Our requirement is to have workflow for documents,
Can some one tell me how can I apply this plug in to documents instead of pages.
Thanks
Jun 18
Ganzha Vitaliy (Ukraine) says:
The workflowreport with user=@self doesn't seem to work as I expect it. I would...The workflowreport with user=@self doesn't seem to work as I expect it. I would expect to only see pages with approvals that are e.g. pending that I myself can/must approve. Am I mistaken?
I am using the following code:
{workflowreport:user=@self}