Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

FAQ Creation workflow

requires v3.0.2+

com.comalatech.workflow.repository.categories.label:Knowledge Base|Sample

-Image RemovedImage Added

Multi-Step FAQ Creation workflow which allows users to submit topic/pages to be approved by the assigned subject matter experts (SME) and the FAQ administrators

  • Allows any user to submit topics, which are approved by a Subject Matter Experts one or more subject matter experts (SME) and FAQ administratorsAdministrators

  • Only the Author and FAQ Administrators can see the submitted FAQ until it is published

    • the SME users are users added as a value(s) for the workflow user parameter Component Leads

    • the FAQ administrators are the users who are members of the Confluence user group(s) added as a value(s) for the workflow group parameter FAQ Administrators

  • Uses a number of workflow triggers (rules)  to send custom email notifications on the following workflow events

    • pagecreated

    • pageupdated

    • pagerejected

    • pageapproved


FAQ Creation Workflow Markup

Code Block
{workflow:name=FAQ Creation Workflow|key=km.faq}
	{description}
        Multi-Step FAQ creation workflow which allows users to submit topic/pages to be approved by the assigned SME(s) and FAQ Admin. Only the SME's and FAQ Admin can see the submissions before they are approved. 
    {description}
    {workflowparameter:FAQ Administrators|type=group}
        confluence-users
    {workflowparameter}
    {workflowparameter:Component Leads|type=group}
        confluence-users
    {workflowparameter}
    {state:Draft|submit=Submitted}
    {state}
    {state:Submitted|approved=Approved|rejected=Rejected}
        {approval:Approve|group=@FAQ Administrators@}
    {state}
    {state:Approved|approved=Reviewed|rejected=Closed}
        {approval:Review|selectedapprover=@Component Leads@}
    {state}
    {state:Reviewed|approved=Published|rejected=Closed}
        {approval:Publish|group=@FAQ Administrators@}
    {state}
    {state:Published|final=true|updated=Approved|hideselection=true}
    {state}
    {state:Closed|hidefrompath=true}
    {state}
    {state:Rejected|hidefrompath=true}
    {state}
    {trigger:statechanged|state=Submitted}
        {set-metadata:FAQ Author}<at:var at:name="user" />@user@{set-metadata}
        {send-email:user=@FAQ Administrators@|subject=FAQ Submitted}
        The FAQ <at:var at:name="page" /> @page@ has been submitting by [~<at:var at:name="user" />~@user@] and is waiting for your approval.
        {send-email}
    {trigger}
    {trigger:pageapproved|approval=Approve}
        {send-email:user=@Review>selected@|subject=FAQ Accepted}
        The FAQ <at:var at:name="page" />@page@ has been approved by [~<at:var at:name="user" />~@user@] and is waiting for your review.
        {send-email}
    {trigger}
    {trigger:pagerejected|approval=Approve}
        {send-email:user=@FAQ Author@|subject=FAQ Rejected}
        Your FAQ <at:var at:name="page" /> @page@ submission has been rejected.
        {send-email}
    {trigger}
    {trigger:pageapproved|approval=Review}
        {send-email:user=@Approve>approver@|subject=FAQ approved}
        The FAQ <at:var at:name="page" />@page@ has been approved by [~<at:var at:name="user" />~@user@] and is waiting for your approval.
        {send-email}
    {trigger}
    {trigger:pagerejected|approval=Review}
        {send-email:user=@Approve>approver@, @FAQ Author@|subject=FAQ rejected}
        The FAQ <at:var at:name="page" />@page@ has been rejected by [~<at:var at:name="user" />~@user@].
        {send-email}
    {trigger}
    {trigger:pagecreated}
        {add-restriction:type=View|user=<at:var at:name="user" />@user@}
        {add-restriction:type=View|group=@FAQ Administrators@}
    {trigger}
    {trigger:pageapproved|approval=Approve}
        {send-email:user=@Review>selected@|subject=FAQ Accepted}
        The FAQ <at:var at:name="page" />@page@ submitted by [~@FAQ Author@] has been approved by [~<at:var at:name="user" />>~@user@]
        and is waiting for your review.
        {send-email}
        {add-restriction:type=View|user=@Review>selected@}
    {trigger}
    {trigger:pageapproved|approval=Publish}
        {send-email:user=@Approve>approver@|subject=FAQ published}
        The FAQ <at:var at:name="page" /> @page@ has been published
        {send-email}
        {remove-restriction:type=View}
    {trigger}
    {trigger:pageupdated|state=Published}
        {send-email:user=@Review>selected@|subject=FAQ updated, requires approval}
        The FAQ <at:var at:name="page" />@page@ has been updated by [~<at:var at:name="user" />~@user@] and requires your approval
        {send-email}
    {trigger}
{workflow}


...

Having a default value for the parameters means that a space administrator can edit these values in the space tools Parameters Document Management screen.

...

...

Tip

The parameter value in the space tools will be used when the workflow is first applied to content in a space.

The workflow parameter values can also be edited using workflow builder.

...

Info

Depending on workflow configuration, workflow parameter values can be edited by a user. This may be useful, for example when first applying the workflow an individual page or blog post

...

and you want to allow the user to set the parameter values,