Skip to content

Commit b9ad61d

Browse files
authored
Merge pull request #7531 from umbraco/merge-v16-changes-to-v17
Added changes from v16 PRs to v17
2 parents d54b935 + 60ea140 commit b9ad61d

File tree

42 files changed

+2058
-806
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+2058
-806
lines changed

16/umbraco-cms/customizing/property-editors/property-actions.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,6 @@ description: Guide on how to implement Property Actions for Property Editors in
44

55
# Property Actions
66

7-
{% hint style="warning" %}
8-
This page is a work in progress and may undergo further revisions, updates, or amendments. The information contained herein is subject to change without notice.
9-
{% endhint %}
10-
117
Property Actions are a built-in feature of Umbraco that allows you to add extra functionality to a Property Editor. Think of them as small, secondary actions that you can attach to a property without modifying the editor itself.
128

139
Property Actions appear as a small button next to the property label, which expands to show the available actions.

16/umbraco-cms/customizing/workspaces.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
# Workspaces
22

3-
{% hint style="warning" %}
4-
This page is a work in progress and may undergo further revisions, updates, or amendments. The information contained herein is subject to change without notice.
5-
{% endhint %}
6-
73
Workspaces provide dedicated editing environments for specific entity types in Umbraco. They create isolated areas where users can edit content, media, members, or other entities with specialized interfaces and functionality.
84

95
## Key Concepts

16/umbraco-cms/reference/api-documentation.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ A library of API Reference documentation is auto-generated from the comments wit
1010

1111
C# API references for the Umbraco Core, Infrastructure, Extensions and Web libraries.
1212

13-
### [Umbraco.Cms.Core](https://apidocs.umbraco.com/v15/csharp/api/Umbraco.Cms.Core.html)
13+
### [Umbraco.Cms.Core](https://apidocs.umbraco.com/v16/csharp/api/Umbraco.Cms.Core.html)
1414

15-
### [Umbraco.Cms.Infrastructure](https://apidocs.umbraco.com/v15/csharp/api/Umbraco.Cms.Infrastructure.html)
15+
### [Umbraco.Cms.Infrastructure](https://apidocs.umbraco.com/v16/csharp/api/Umbraco.Cms.Infrastructure.html)
1616

17-
### [Umbraco.Cms.Web](https://apidocs.umbraco.com/v15/csharp/api/Umbraco.Cms.Web.Common.html)
17+
### [Umbraco.Cms.Web](https://apidocs.umbraco.com/v16/csharp/api/Umbraco.Cms.Web.Common.html)
1818

19-
### [Umbraco.Extensions](https://apidocs.umbraco.com/v15/csharp/api/Umbraco.Extensions.html)
19+
### [Umbraco.Extensions](https://apidocs.umbraco.com/v16/csharp/api/Umbraco.Extensions.html)
2020

2121
{% hint style="info" %}
2222
Opens a documentation browser that is different from the documentation section you're viewing now.

16/umbraco-forms/developer/ajaxforms.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -599,8 +599,9 @@ With [expanded output](https://docs.umbraco.com/umbraco-cms/reference/content-de
599599
}
600600
```
601601

602-
## Dynamic form injection
603-
For dynamic form injection on a page, such as in a modal dialog, there's a specific JavaScript event and API method. This allows reinitializing Umbraco Forms for the new content.
602+
## Dynamic Form Injection
603+
604+
For dynamic Form injection on a page, such as in a modal dialog, there's a specific JavaScript event and API method. This allows reinitializing Umbraco Forms for the new content.
604605

605606
```javascript
606607
// Execute a reinitialize on dynamic injections

17/umbraco-cms/.gitbook.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,3 +146,6 @@ redirects:
146146
extending/backoffice-setup/extension-types: customizing/extending-overview/extension-types/README.md
147147
customizing/extending-overview/extension-registry/extension-registry: customizing/extending-overview/extension-registry/register-extensions.md
148148
fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/date: fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/date-time-editor/README.md
149+
customizing/extending-overview/extension-types/workspaces/workspace-action-menu-item: customizing/extending-overview/extension-types/workspaces/workspace-action-menu-items.md
150+
customizing/extending-overview/extension-types/workspaces/workspace-footer-app: customizing/extending-overview/extension-types/workspaces/workspace-footer-apps.md
151+
83.6 KB
Loading
98.1 KB
Loading
46.4 KB
Loading

17/umbraco-cms/SUMMARY.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,9 @@
188188
* [Trees](customizing/extending-overview/extension-types/tree.md)
189189
* [Workspaces](customizing/extending-overview/extension-types/workspaces/README.md)
190190
* [Workspace Actions](customizing/extending-overview/extension-types/workspaces/workspace-editor-actions.md)
191+
* [Workspace Action Menu Items](customizing/extending-overview/extension-types/workspaces/workspace-action-menu-items.md)
191192
* [Workspace Context](customizing/extending-overview/extension-types/workspaces/workspace-context.md)
193+
* [Workspace Footer Apps](customizing/extending-overview/extension-types/workspaces/workspace-footer-apps.md)
192194
* [Workspace Views](customizing/extending-overview/extension-types/workspaces/workspace-views.md)
193195
* [Extension Kind](customizing/extending-overview/extension-kind.md)
194196
* [Extension Conditions](customizing/extending-overview/extension-conditions.md)

17/umbraco-cms/customizing/extending-overview/extension-types/dashboard.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,78 @@ Even though these dashboards are useful, you might want to create your own custo
3939

4040
You can try and [create a custom dashboard](../../../tutorials/creating-a-custom-dashboard/) as a way on getting started on this topic.
4141

42+
### Hiding or adding conditional rules to existing dashboards
43+
44+
You might need to hide or add conditions to existing dashboards. Common use cases include hiding the Getting Started dashboard or restricting the Redirect Management dashboard to Admin users only.
45+
46+
To do this, you will first need to [create an extension](../../../tutorials/creating-your-first-extension.md). For this example, which implements dashboard customizations, a descriptive name like `DashboardCustomization` works well:
47+
48+
{% code title="~/App_Plugins/DashboardCustomization/umbraco-package.json" lineNumbers="true" %}
49+
```json
50+
{
51+
"name": "DashboardCustomization",
52+
"version": "1.0.0",
53+
"extensions": [
54+
{
55+
"type": "backofficeEntryPoint",
56+
"alias": "DashboardCustomization.EntryPoint",
57+
"name": "Dashboard Customization Entry Point",
58+
"js": "/App_Plugins/DashboardCustomization/dashboards-setup.js"
59+
}
60+
]
61+
}
62+
```
63+
{% endcode %}
64+
65+
Use the `onInit` function to configure the dashboard removal and customization. The optional `onUnload` function can clean up any customizations when the extension is disposed:
66+
67+
{% code title="~/App_Plugins/DashboardCustomization/dashboards-setup.js" lineNumbers="true" %}
68+
```js
69+
export const onInit = (host, extensionRegistry) => {
70+
// Remove Getting Started dashboard for all users
71+
extensionRegistry.exclude('Umb.Dashboard.UmbracoNews');
72+
73+
// Restrict Redirect Management dashboard to Admin users only
74+
extensionRegistry.appendCondition('Umb.Dashboard.RedirectManagement', {
75+
alias: 'Umb.Condition.CurrentUser.IsAdmin'
76+
});
77+
}
78+
79+
/**
80+
* Optional: Perform cleanup when the extension is unloaded
81+
*/
82+
export const onUnload = (host, extensionRegistry) => {
83+
// Note: In most cases, cleanup is not necessary as the extension registry
84+
// handles this automatically when the backoffice reloads
85+
}
86+
```
87+
{% endcode %}
88+
89+
#### Restricting to specific user groups
90+
91+
To allow multiple user groups (for example, Admin or a custom group), use the `Umb.Condition.CurrentUser.GroupId` condition with the `oneOf` parameter:
92+
93+
{% code title="~/App_Plugins/DashboardCustomization/dashboards-setup.js" lineNumbers="true" %}
94+
```js
95+
export const onInit = (host, extensionRegistry) => {
96+
extensionRegistry.appendCondition('Umb.Dashboard.RedirectManagement', {
97+
alias: 'Umb.Condition.CurrentUser.GroupId',
98+
oneOf: [
99+
'CUSTOM-GROUP-GUID-1-HERE',
100+
'CUSTOM-GROUP-GUID-2-HERE'
101+
]
102+
});
103+
};
104+
```
105+
{% endcode %}
106+
107+
You can find user group GUIDs in the **Users > User Groups** section of the backoffice.
108+
109+
Read more about the available conditions:
110+
111+
{% content-ref url="condition.md" %}
112+
[condition.md](condition.md)
113+
{% endcontent-ref %}
42114
## Registering your Dashboard
43115

44116
This section dives into the Dashboard Extension Manifest, shows how to register one, and append additional details.

0 commit comments

Comments
 (0)