diff --git a/13/umbraco-workflow/getting-started/configuration.md b/13/umbraco-workflow/getting-started/configuration.md index 42620de05f8..bd965943c09 100644 --- a/13/umbraco-workflow/getting-started/configuration.md +++ b/13/umbraco-workflow/getting-started/configuration.md @@ -34,17 +34,24 @@ All Workflow configuration is optional and will fallback to defaults, if not set { "Workflow": { "ReminderNotificationPeriod": Timespan.FromHours(8), + "ActionNotificationPeriod": Timespance.FromMinutes(5), "EnableTestLicense": false, "EmailTemplatePath": "~/Views/Partials/WorkflowEmails", - "SettingsCustomizationā€: {...} + "SettingsCustomization": {...}, + "HistoryCleanupPolicy": {...} } +} ``` ### Workflow Configuration #### ReminderNotificationPeriod -A `TimeSpan` representing the period between checking for, and sending, reminder notifications for overdue workflows. This setting is used in conjunction with `ReminderDelay` to determine if a workflow is overdue. +A `string` that represents the period between checking for, and sending, reminder notifications for overdue workflows. This setting is used in conjunction with `ReminderDelay` to determine if a workflow is overdue. The default value is eight hours. The permitted value is a `TimeSpan`-parseable string, for example, `0.00.01:00` for one minute. + +#### ActionNotificationPeriod + +A `string` that represents the period between checking for and sending action notifications for active workflows. The default value is five minutes. The permitted value is a `TimeSpan`-parseable string, for example, `0.00.01:00` for one minute. #### EnableTestLicense @@ -98,6 +105,7 @@ All available `SettingsCustomization` options are illustrated below along with t "ConfigureApprovalThreshold": bool, "RejectionResetsApprovals": bool, "LockIfActive": bool, + "ScheduledContentLock": 0|1|2 matching the ScheduledLockMode enum values, "MandatoryComments": bool, "AllowAttachments": bool, "AllowScheduling": bool, @@ -123,9 +131,8 @@ All available `SettingsCustomization` options are illustrated below along with t } } ``` - {% hint style="info" %} -These are complex types and are not recommended to have values set from Configuration. Instead, these values can be set from the BackOffice to hidden or read-only to prevent further changes. +These are complex types and having values set from Configuration is not recommended. Instead, these values can be set to hidden or read-only from the backoffice to prevent further changes. {% endhint %} ### General @@ -162,6 +169,16 @@ When true, and ApprovalThreshold is Most or All, rejecting a task resets progres When true, prevents editing content where the node is in an active workflow. When false, content can be edited at any stage of a workflow. +#### ScheduledContentLock (int) + +Sets the scheduled content lock to one of None (0), Workflow (1), or All (2): + +| Value | Name | Description | +| ------------- | -------- | -------------------------------------------------| +| 0 (_default_) | None | Scheduled content is not locked | +| 1 | Workflow | Content scheduled via Workflow can not be edited | +| 2 | All | All scheduled content can not be edited | + #### MandatoryComments (bool) When true (default), comments are required when approving a workflow task. When false, comments are optional when approving a workflow task. Comments are always required when submitting changes for approval. diff --git a/13/umbraco-workflow/release-notes.md b/13/umbraco-workflow/release-notes.md index 58e01a67a1c..8c85c1c7c34 100644 --- a/13/umbraco-workflow/release-notes.md +++ b/13/umbraco-workflow/release-notes.md @@ -17,9 +17,16 @@ Check the [Version Specific Upgrade Notes](upgrading/version-specific.md) articl This section contains the release notes for Umbraco Workflow 13 including all changes for this version. +### [13.3.0](https://github.com/umbraco/Umbraco.Workflow.Issues/issues?q=is%3Aissue+is%3Aclosed+label%3Arelease%2F13.3.0) (October 23 2024 ) +* Adds scheduled content locking feature. Documents can be made readonly until the scheduled release date passes, to ensure approved content is not modified without workflow approval. [#84](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/84) +* Adds support for content segments. Segment names are displayed when requesting approval and in workflow history [#60](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/60) +* Adds support for Arabic. +* Improves UI in workflow detail overlay. Reduces the number of elements and shifts appropriate data points into tag elements. +* Adds email queue for thread-safe email notifications. Emails are now processed in the hosted service, via a first-in first-out queue. This resolves a reported issue where sending large numbers of emails could result in data reader errors. [#85](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/85) + ### [13.2.1](https://github.com/umbraco/Umbraco.Workflow.Issues/issues?q=is%3Aissue+is%3Aclosed+label%3Arelease%2F13.2.1) (October 3 2024) * Ensure scheduling information is displayed in workflow history [#82](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/82) -* Fixes an issue where dates were not correctly localised for scheduled workflows [#81](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/81) +* Fixes an issue where dates were not correctly localized for scheduled workflows [#81](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/81) * Fixes an issue where scheduled workflows did not apply the release/expire date if the content node was already scheduled [#81](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/80) * Ensure converting integers to strings uses the invariant culture to avoid unexpected formatting diff --git a/13/umbraco-workflow/workflow-section/workflow-settings.md b/13/umbraco-workflow/workflow-section/workflow-settings.md index f5b4f7862f8..b3d3b21bace 100644 --- a/13/umbraco-workflow/workflow-section/workflow-settings.md +++ b/13/umbraco-workflow/workflow-section/workflow-settings.md @@ -19,17 +19,21 @@ You can configure the **General** Settings from the **Workflow** section in the * **Flow type** - Determines the approval flow progress. These options manage how the Change Author is included in the workflow: * **Explicit** - All steps of the workflow must be completed and all users will be notified of tasks (including the Change Author). - * **Implicit** - All steps where the original Change Author is _not_ a member of the group must be completed. Steps where the original Change Author is a member of the approving group will be completed automatically and noted in the workflow history as not required. + * **Implicit** - All steps where the original Change Author is _not_ a member of the group must be completed. Steps, where the original Change Author is a member of the approving group, will be completed automatically and noted in the workflow history as not required. * **Exclude** - Similar to Explicit. All steps must be completed but the original Change Author is not included in the notifications or shown in the dashboard tasks. * **Approval threshold** - Sets the global approval threshold to One, Most or All: * **One** - Pending task requires approval from any member of the assigned approval group. This is the default behavior for all installations (trial and licensed). - * **Most** - Pending task requires an absolute majority of group members. For example, a group with three members requires two approvals and a group with four members requires three approvals. + * **Most** - Pending tasks require an absolute majority of group members. For example, a group with three members requires two approvals and a group with four members requires three approvals. * **All** - Pending task requires approval from all group members. * **Rejection resets approvals** - When true, and the approval threshold is Most or All, rejecting a task resets the previous approvals for the workflow stage. * **Allow configuring approval threshold** - Enables setting the approval threshold for any stage of a workflow (on a content node or Document Type). * **Lock active content** - Determines how the content in a workflow should be managed. Set to `true` or `false` depending on whether the approval group responsible for the active workflow step should make modifications to the content. Content is locked after the first approval in the workflow - until then, the content can be edited as normal. +* **Lock scheduled content** - When not None, prevents edits to content with a scheduled release date: + * **None** - Disables scheduled content locking + * **Workflow** - Prevent editing scheduled content when scheduling was approved via Workflow + * **All** - Prevents editing all scheduled content * **Administrators can edit** - Set to true to allow administrators to edit content at any stage of the workflow, ensuring flexibility and control over the content approval process. -* **Mandatory comments** - Set to true to require comments when approving workflows. Comments are always required when submitting changes for approval, and are always optional for admin users. +* **Mandatory comments** - Set to true to require comments when approving workflows. Comments are always required when submitting changes for approval and are always optional for admin users. * **Allow attachments** - Provide an attachment (such as a supporting document or enable referencing a media item) when initiating a workflow. This feature is useful when a workflow requires supporting documentation. * **Allow scheduling** - Provides an option to select a scheduled date when initiating a workflow. * **Use workflow for unpublish** - Determines if unpublish actions require workflow approval. Set to true to display the **Action** option when submitting the content for approval. @@ -165,7 +169,7 @@ Umbraco Workflow provides **Settings** for determining who receives emails at wh Duplicate users are removed from email notifications. {% endhint %} -By default, all emails are sent to the **Group**. This might not always be an ideal situation. For example: cancelled workflows would be best sent to the **Author** only, likewise with rejected. +By default, all emails are sent to the **Group**. This might not always be an ideal situation. For example: canceled workflows would be best sent to the **Author** only, likewise with rejected. It might be useful to notify **All** the participants of completed workflows but even this may be excessive. Depending on your website, you can adjust the best configuration. diff --git a/14/umbraco-workflow/getting-started/configuration.md b/14/umbraco-workflow/getting-started/configuration.md index 609892c5e5d..74d3d626af9 100644 --- a/14/umbraco-workflow/getting-started/configuration.md +++ b/14/umbraco-workflow/getting-started/configuration.md @@ -34,6 +34,7 @@ All Workflow configuration is optional and will fallback to defaults, if not set { "Workflow": { "ReminderNotificationPeriod": Timespan.FromHours(8), + "ActionNotificationPeriod": Timespance.FromMinutes(5), "EnableTestLicense": false, "EmailTemplatePath": "~/Views/Partials/WorkflowEmails", "DateFormats": { @@ -51,7 +52,11 @@ All Workflow configuration is optional and will fallback to defaults, if not set #### ReminderNotificationPeriod -A `TimeSpan` representing the period between checking for, and sending, reminder notifications for overdue workflows. This setting is used in conjunction with `ReminderDelay` to determine if a workflow is overdue. +A `string` that represents the period between checking for, and sending, reminder notifications for overdue workflows. This setting is used in conjunction with `ReminderDelay` to determine if a workflow is overdue. The default value is eight hours. The permitted value is a `TimeSpan`-parseable string, for example, `0.00.01:00` for one minute. + +#### ActionNotificationPeriod + +A `string` that represents the period between checking for and sending action notifications for active workflows. The default value is five minutes. The permitted value is a `TimeSpan`-parseable string, for example, `0.00.01:00` for one minute. #### EnableTestLicense @@ -109,6 +114,7 @@ All available `SettingsCustomization` options are illustrated below along with t "ConfigureApprovalThreshold": bool, "RejectionResetsApprovals": bool, "LockIfActive": bool, + "ScheduledContentLock": 0|1|2 matching the ScheduledLockMode enum values, "MandatoryComments": bool, "AllowAttachments": bool, "AllowScheduling": bool, @@ -136,7 +142,7 @@ All available `SettingsCustomization` options are illustrated below along with t ``` {% hint style="info" %} -These are complex types and are not recommended to have values set from Configuration. Instead, these values can be set from the BackOffice to hidden or read-only to prevent further changes. +These are complex types and having values set from Configuration is not recommended. Instead, these values can be set to hidden or read-only from the backoffice to prevent further changes. {% endhint %} ### General @@ -173,6 +179,16 @@ When true, and ApprovalThreshold is Most or All, rejecting a task resets progres When true, prevents editing content where the node is in an active workflow. When false, content can be edited at any stage of a workflow. +#### ScheduledContentLock (int) + +Sets the scheduled content lock to one of None (0), Workflow (1), or All (2): + +| Value | Name | Description | +| ------------- | -------- | -------------------------------------------------| +| 0 (_default_) | None | Scheduled content is not locked | +| 1 | Workflow | Content scheduled via Workflow can not be edited | +| 2 | All | All scheduled content can not be edited + #### MandatoryComments (bool) When true (default), comments are required when approving a workflow task. When false, comments are optional when approving a workflow task. Comments are always required when submitting changes for approval. diff --git a/14/umbraco-workflow/release-notes.md b/14/umbraco-workflow/release-notes.md index 66cf30ae5f4..3903afe394b 100644 --- a/14/umbraco-workflow/release-notes.md +++ b/14/umbraco-workflow/release-notes.md @@ -17,9 +17,17 @@ Check the [Version Specific Upgrade Notes](upgrading/version-specific.md) articl This section contains the release notes for Umbraco Workflow 14 including all changes for this version. +### [14.1.0](https://github.com/umbraco/Umbraco.Workflow.Issues/issues?q=is%3Aissue+is%3Aclosed+label%3Arelease%2F14.1.0) (October 23 2024 ) +* Adds scheduled content locking feature. Documents can be made readonly until the scheduled release date passes, to ensure approved content is not modified without workflow approval. [#84](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/84) +* Adds support for readonly mode when a document is pending workflow approval. Along with the scheduled content lock, this feature requires Umbraco 14.3.0, which is now the minumum version dependency for Umbraco Workflow v14. +* Adds support for content segments. Segment names are displayed when requesting approval and in workflow history [#60](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/60) +* Adds support for Arabic. +* Improves UI in workflow detail overlay. Reduces the number of elements and shifts appropriate data points into tag elements. +* Adds email queue for thread-safe email notifications. Emails are now processed in the hosted service, via a first-in first-out queue. This resolves a reported issue where sending large numbers of emails could result in data reader errors. [#85](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/85) + ### [14.0.3](https://github.com/umbraco/Umbraco.Workflow.Issues/issues?q=is%3Aissue+is%3Aclosed+label%3Arelease%2F14.0.3) (October 3 2024) * Ensure scheduling information is displayed in workflow history [#82](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/82) -* Fixes an issue where dates were not correctly localised for scheduled workflows [#81](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/81) +* Fixes an issue where dates were not correctly localized for scheduled workflows [#81](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/81) * Fixes an issue where scheduled workflows did not apply the release/expire date if the content node was already scheduled [#81](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/80) * Ensure converting integers to strings uses the invariant culture to avoid unexpected formatting * Fixes an issue related to sending notification emails in sites with a large number of workflow groups [#79](https://github.com/umbraco/Umbraco.Workflow.Issues/issues/79)