From 32a0c3b075f8230dd00142aa7ebc161a67faffaf Mon Sep 17 00:00:00 2001
From: Jan Skovgaard
Date: Tue, 26 May 2020 17:45:39 +0200
Subject: [PATCH 1/7] "Actions" drop down options do not give context to the
user (#6301)
---
.../views/components/editor/umb-editor-menu.html | 9 ++++++++-
src/Umbraco.Web.UI/Umbraco/config/lang/da.xml | 10 +++++++++-
src/Umbraco.Web.UI/Umbraco/config/lang/en.xml | 10 +++++++++-
src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml | 14 +++++++++++++-
src/Umbraco.Web/Models/Trees/MenuItem.cs | 9 ++++++++-
src/Umbraco.Web/Models/Trees/MenuItemList.cs | 11 ++++++++---
src/Umbraco.Web/Trees/ContentTreeController.cs | 2 +-
7 files changed, 56 insertions(+), 9 deletions(-)
diff --git a/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-menu.html b/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-menu.html
index fe90fef07a..ceae7c3bb9 100644
--- a/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-menu.html
+++ b/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-menu.html
@@ -15,7 +15,14 @@
diff --git a/src/Umbraco.Web.UI/Umbraco/config/lang/da.xml b/src/Umbraco.Web.UI/Umbraco/config/lang/da.xml
index 7cead86114..a876b1a6b7 100644
--- a/src/Umbraco.Web.UI/Umbraco/config/lang/da.xml
+++ b/src/Umbraco.Web.UI/Umbraco/config/lang/da.xml
@@ -247,7 +247,7 @@
Dette dokument er udgivet, men dets URL kan ikke dirigeresUdgivUdgivet
- Udgivet (Afventende ændringer)
+ Udgivet (Ventede ændringer)UdgivelsesstatusUdgiv med undersider for at udgive %0% og alle sider under og dermed gøre deres indhold offentligt tilgængelige.]]>Udgiv med undersider for at udgive de valgte sprog og de samme sprog for sider under og dermed gøre deres indhold offentligt tilgængelige.]]>
@@ -426,6 +426,7 @@
Internt link:Ved lokalt link, indsæt da en "#" foran linketÅben i nyt vindue?
+ MakroindstillingerDenne makro har ingen egenskaber du kan redigereIndsæt tekstRediger rettigheder for
@@ -663,6 +664,7 @@
IkonIdImporter
+ Inkludér undermapper i søgningSøg kun i denne mappeInfoIndre margen
@@ -1749,6 +1751,12 @@ Mange hilsner fra Umbraco robotten
Åben backoffice søgningÅben/Luk backoffice hjælpÅben/Luk dine profil indstillinger
+ Tilføj domæne på %0%
+ Opret ny node under %0%
+ Opsæt offentlig adgang på %0%
+ Opsæt rettigheder på %0%
+ Juster soterings rækkefølgen for %0%
+ Opret indholds skabelon baseret på %0%Aktivt sprogSkift sprog tilOpret ny mappe
diff --git a/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml b/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml
index e764b5591e..e4f9ed7b91 100644
--- a/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml
+++ b/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml
@@ -141,6 +141,7 @@
Save and send for approvalSave list viewSchedule
+ PreviewSave and previewPreview is disabled because there's no template assignedChoose style
@@ -686,6 +687,7 @@
IconIdImport
+ Include subfolders in searchSearch only this folderInfoInner margin
@@ -2228,6 +2230,12 @@ To manage your website, simply open the Umbraco back office and start adding con
Open backoffice searchOpen/Close backoffice helpOpen/Close your profile options
+ Setup Culture and Hostnames for %0%
+ Create new node under %0%
+ Setup Public access on %0%
+ Setup Permissions on %0%
+ Change sort order for %0%
+ Create Content Template based on %0%Open context menu forCurrent languageSwitch language to
@@ -2243,7 +2251,7 @@ To manage your website, simply open the Umbraco back office and start adding con
CreateEditName
- Add new row
+ Add new rowView more options
diff --git a/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml b/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml
index e1b1df2c34..5fc037d8b3 100644
--- a/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml
+++ b/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml
@@ -140,6 +140,7 @@
Send for approvalSave list viewSchedule
+ PreviewSave and previewPreview is disabled because there's no template assignedChoose style
@@ -369,7 +370,8 @@
Document Types within the Settings section, by changing the Allow as root option under Permissions.]]>Media Types Types within the Settings section, by editing the Allowed child node types under Permissions.]]>The selected media in the tree doesn't allow for any other media to be created below it.
- Edit permissions for this media typeDocument Type without a template
+ Edit permissions for this media type
+ Document Type without a templateNew folderNew data typeNew JavaScript file
@@ -570,6 +572,9 @@
#value or ?key=valueEnter alias...Generating alias...
+ Create item
+ Edit
+ NameCreate custom list view
@@ -690,6 +695,7 @@
IconIdImport
+ Include subfolders in searchSearch only this folderInfoInner margin
@@ -2244,6 +2250,12 @@ To manage your website, simply open the Umbraco back office and start adding con
Open backoffice searchOpen/Close backoffice helpOpen/Close your profile options
+ Setup Culture and Hostnames for %0%
+ Create new node under %0%
+ Setup Public access on %0%
+ Setup Permissions on %0%
+ Change sort order for %0%
+ Create Content Template based on %0%Open context menu forCurrent languageSwitch language to
diff --git a/src/Umbraco.Web/Models/Trees/MenuItem.cs b/src/Umbraco.Web/Models/Trees/MenuItem.cs
index 9d4c76eea1..094c6b24ff 100644
--- a/src/Umbraco.Web/Models/Trees/MenuItem.cs
+++ b/src/Umbraco.Web/Models/Trees/MenuItem.cs
@@ -5,6 +5,7 @@ using System.Collections.Generic;
using Umbraco.Core;
using Umbraco.Core.Services;
using Umbraco.Web.Actions;
+using System.Threading;
namespace Umbraco.Web.Models.Trees
{
@@ -28,12 +29,15 @@ namespace Umbraco.Web.Models.Trees
Name = name;
}
-
public MenuItem(string alias, ILocalizedTextService textService)
: this()
{
+ var values = textService.GetAllStoredValues(Thread.CurrentThread.CurrentUICulture);
+ values.TryGetValue($"visuallyHiddenTexts/{alias}_description", out var textDescription);
+
Alias = alias;
Name = textService.Localize($"actions/{Alias}");
+ TextDescription = textDescription;
}
///
@@ -74,6 +78,9 @@ namespace Umbraco.Web.Models.Trees
[Required]
public string Alias { get; set; }
+ [DataMember(Name = "textDescription")]
+ public string TextDescription { get; set; }
+
///
/// Ensures a menu separator will exist before this menu item
///
diff --git a/src/Umbraco.Web/Models/Trees/MenuItemList.cs b/src/Umbraco.Web/Models/Trees/MenuItemList.cs
index 1df486ebdf..4aaf0632ab 100644
--- a/src/Umbraco.Web/Models/Trees/MenuItemList.cs
+++ b/src/Umbraco.Web/Models/Trees/MenuItemList.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.Threading;
using Umbraco.Core;
using Umbraco.Core.Services;
using Umbraco.Web.Actions;
@@ -75,7 +76,7 @@ namespace Umbraco.Web.Models.Trees
}
return null;
}
-
+
internal MenuItem CreateMenuItem(string name, bool hasSeparator = false, bool opensDialog = false)
where T : IAction
{
@@ -96,14 +97,18 @@ namespace Umbraco.Web.Models.Trees
var item = Current.Actions.GetAction();
if (item == null) return null;
+ var values = textService.GetAllStoredValues(Thread.CurrentThread.CurrentUICulture);
+ values.TryGetValue($"visuallyHiddenTexts/{item.Alias}Description", out var textDescription);
+
var menuItem = new MenuItem(item, textService.Localize($"actions/{item.Alias}"))
{
SeparatorBefore = hasSeparator,
- OpensDialog = opensDialog
+ OpensDialog = opensDialog,
+ TextDescription = textDescription,
};
return menuItem;
}
-
+
}
}
diff --git a/src/Umbraco.Web/Trees/ContentTreeController.cs b/src/Umbraco.Web/Trees/ContentTreeController.cs
index 85ff30487d..663af43643 100644
--- a/src/Umbraco.Web/Trees/ContentTreeController.cs
+++ b/src/Umbraco.Web/Trees/ContentTreeController.cs
@@ -323,7 +323,7 @@ namespace Umbraco.Web.Trees
private void AddActionNode(IUmbracoEntity item, MenuItemCollection menu, bool hasSeparator = false, bool opensDialog = false)
where TAction : IAction
{
- var menuItem = menu.Items.Add(Services.TextService.Localize("actions", _actions.GetAction().Alias), hasSeparator, opensDialog);
+ var menuItem = menu.Items.Add(Services.TextService, hasSeparator, opensDialog);
}
public IEnumerable Search(string query, int pageSize, long pageIndex, out long totalFound, string searchFrom = null)
From cc04a1c8fe9d7d3c639d744a618bfd9cd631a41a Mon Sep 17 00:00:00 2001
From: Jan Skovgaard
Date: Tue, 26 May 2020 18:01:17 +0200
Subject: [PATCH 2/7] Content templates dashboard: Add translations and move
styles external (#6888)
---
src/Umbraco.Web.UI.Client/src/less/belle.less | 1 +
.../less/dashboards/content-templates.less | 22 +++++++++++
.../src/views/contentblueprints/intro.html | 37 ++++++++++++-------
src/Umbraco.Web.UI/Umbraco/config/lang/en.xml | 17 +++++++++
.../Umbraco/config/lang/en_us.xml | 17 +++++++++
5 files changed, 81 insertions(+), 13 deletions(-)
create mode 100644 src/Umbraco.Web.UI.Client/src/less/dashboards/content-templates.less
diff --git a/src/Umbraco.Web.UI.Client/src/less/belle.less b/src/Umbraco.Web.UI.Client/src/less/belle.less
index 174f9f41d7..f0d7c6f1e1 100644
--- a/src/Umbraco.Web.UI.Client/src/less/belle.less
+++ b/src/Umbraco.Web.UI.Client/src/less/belle.less
@@ -227,6 +227,7 @@
@import "dashboards/umbraco-forms.less";
@import "dashboards/examine-management.less";
@import "dashboards/healthcheck.less";
+@import "dashboards/content-templates.less";
@import "dashboards/nucache.less";
@import "typeahead.less";
diff --git a/src/Umbraco.Web.UI.Client/src/less/dashboards/content-templates.less b/src/Umbraco.Web.UI.Client/src/less/dashboards/content-templates.less
new file mode 100644
index 0000000000..9966fc97e1
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/less/dashboards/content-templates.less
@@ -0,0 +1,22 @@
+.content-templates-dashboard{
+ p{
+ line-height: 1.6em;
+ margin-bottom: 30px;
+
+ &:last-child{
+ margin-bottom: 0;
+ }
+ }
+
+ ul{
+ margin-bottom: 15px;
+ }
+
+ li{
+ margin-bottom: 5px;
+
+ &:last-child{
+ margin-bottom: 0;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI.Client/src/views/contentblueprints/intro.html b/src/Umbraco.Web.UI.Client/src/views/contentblueprints/intro.html
index ce423225f6..66695ace91 100644
--- a/src/Umbraco.Web.UI.Client/src/views/contentblueprints/intro.html
+++ b/src/Umbraco.Web.UI.Client/src/views/contentblueprints/intro.html
@@ -12,21 +12,32 @@
-
-
What are Content Templates?
-
Content Templates are pre-defined content that can be selected when creating a new content node.
+
+
+ What are Content Templates?
+
+
+ Content Templates are pre-defined content that can be selected when creating a new content node.
+
-
How do I create a Content Template?
-
There are two ways to create a Content Template:
-
-
Right-click a content node and select "Create Content Template" to create a new Content Template.
-
Right-click the Content Templates tree in the Settings section and select the Document Type you want to create a Content Template for.
-
-
Once given a name, editors can start using the Content Template as a foundation for their new page.
+
+ How do I create a Content Template?
+
+
+
There are two ways to create a Content Template:
+
+
Right-click a content node and select "Create Content Template" to create a new Content Template.
+
Right-click the Content Templates tree in the Settings section and select the Document Type you want to create a Content Template for.
+
+
Once given a name, editors can start using the Content Template as a foundation for their new page.
+
-
How do I manage Content Templates
-
You can edit and delete Content Templates from the "Content Templates" tree in the Settings section. Just expand the Document Type which the
- Content Template is based on and click it to edit or delete it.
+
+ How do I manage Content Templates?
+
+
+ You can edit and delete Content Templates from the "Content Templates" tree in the Settings section. Just expand the Document Type which the Content Template is based on and click it to edit or delete it.
+
diff --git a/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml b/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml
index e4f9ed7b91..e96ef754c4 100644
--- a/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml
+++ b/src/Umbraco.Web.UI/Umbraco/config/lang/en.xml
@@ -2423,4 +2423,21 @@ To manage your website, simply open the Umbraco back office and start adding con
Umbraco FormsCreate forms using an intuitive drag and drop interface. From simple contact forms that sends e-mails to advanced questionaires that integrate with CRM systems. Your clients will love it!
+
+ What are Content Templates?
+ Content Templates are pre-defined content that can be selected when creating a new content node.
+ How do I create a Content Template?
+
+ There are two ways to create a Content Template:
+
+
Right-click a content node and select "Create Content Template" to create a new Content Template.
+
Right-click the Content Templates tree in the Settings section and select the Document Type you want to create a Content Template for.
+
+
Once given a name, editors can start using the Content Template as a foundation for their new page.
+ ]]>
+
+ How do I manage Content Templates?
+ You can edit and delete Content Templates from the "Content Templates" tree in the Settings section. Expand the Document Type which the Content Template is based on and click it to edit or delete it.
+
diff --git a/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml b/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml
index 5fc037d8b3..2bb6495977 100644
--- a/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml
+++ b/src/Umbraco.Web.UI/Umbraco/config/lang/en_us.xml
@@ -2443,4 +2443,21 @@ To manage your website, simply open the Umbraco back office and start adding con
Umbraco FormsCreate forms using an intuitive drag and drop interface. From simple contact forms that sends e-mails to advanced questionaires that integrate with CRM systems. Your clients will love it!
+
+ What are Content Templates?
+ Content Templates are pre-defined content that can be selected when creating a new content node.
+ How do I create a Content Template?
+
+ There are two ways to create a Content Template:
+
+
Right-click a content node and select "Create Content Template" to create a new Content Template.
+
Right-click the Content Templates tree in the Settings section and select the Document Type you want to create a Content Template for.
+
+
Once given a name, editors can start using the Content Template as a foundation for their new page.
+ ]]>
+
+ How do I manage Content Templates?
+ You can edit and delete Content Templates from the "Content Templates" tree in the Settings section. Expand the Document Type which the Content Template is based on and click it to edit or delete it.
+
From 19f16c3b1fefadfd71d2de523fd13561ffeb69aa Mon Sep 17 00:00:00 2001
From: Jan Skovgaard
Date: Tue, 26 May 2020 18:02:21 +0200
Subject: [PATCH 3/7] Theme backoffice docs for v8 to clearly differentiate it
from the v7 docs (#8010)
---
src/Umbraco.Web.UI.Docs/gulpfile.js | 4 +--
src/Umbraco.Web.UI.Docs/umb-docs.css | 39 +++++++++++++++++-----------
2 files changed, 26 insertions(+), 17 deletions(-)
diff --git a/src/Umbraco.Web.UI.Docs/gulpfile.js b/src/Umbraco.Web.UI.Docs/gulpfile.js
index 789e2b7845..a3e596ecad 100644
--- a/src/Umbraco.Web.UI.Docs/gulpfile.js
+++ b/src/Umbraco.Web.UI.Docs/gulpfile.js
@@ -16,7 +16,7 @@ gulp.task('docs', [], function (cb) {
var options = {
html5Mode: false,
startPage: '/api',
- title: "Umbraco Backoffice UI API Documentation",
+ title: "Umbraco 8 Backoffice UI API Documentation",
dest: './api',
styles: ['./umb-docs.css'],
image: "https://our.umbraco.com/assets/images/logo.svg"
@@ -53,4 +53,4 @@ gulp.task('open:docs', function (cb) {
gulp.src(__filename)
.pipe(open(options));
cb();
-});
\ No newline at end of file
+});
diff --git a/src/Umbraco.Web.UI.Docs/umb-docs.css b/src/Umbraco.Web.UI.Docs/umb-docs.css
index 0f2e3e7f74..b748a0a609 100644
--- a/src/Umbraco.Web.UI.Docs/umb-docs.css
+++ b/src/Umbraco.Web.UI.Docs/umb-docs.css
@@ -4,7 +4,7 @@ html {
}
body {
font-family: 'Segoe UI', Tahoma, Helvetica, sans-serif;
-
+
}
.container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container {
@@ -33,37 +33,43 @@ body {
font-family: inherit;
}
+.navbar .container{
+ min-height: inherit;
+ display: flex;
+ align-items: center;
+}
+
.navbar .brand {
display: block;
- float: left;
- padding: 10px 20px 10px;
- margin-left: -20px;
- font-size: 20px;
- font-weight: 200;
- color: rgba(0,0,0,.8);
+ color: white;
text-shadow: none;
}
.navbar-fixed-top .navbar-inner {
min-height: 50px;
- background: #a3db78;
+ background: #3544b1;
}
.form-search .well {
- background-color: #f5fbf1;
+ background-color: #f7f7f7;
}
.form-search > ul.nav > li.module {
- background-color: #daf0c9;
+ background-color: #3544b1;
}
-.breadcrumb {
- background-color: #f5fbf1;
+.form-search > ul.nav > li.module a {
+ color: white;
}
-a {
- color: #f36f21;
+.form-search > ul.nav > li.section {
+ background-color: #ccc;
}
+
+.breadcrumb {
+ background-color: #f7f7f7;
+}
+
a:hover {
text-decoration: none;
color: rgba(0,0,0,.8);
@@ -87,9 +93,12 @@ a:hover {
color: #000;
}
+.form-search > ul.nav > li.module > a:hover{
+ color: #fff;
+}
+
.header img {
width: 50px;
- margin-top: 5px;
}
.content .methods code {
From 14ad2bd27cae73f2dcf41d8f810ec1c50975b032 Mon Sep 17 00:00:00 2001
From: Jan Skovgaard
Date: Tue, 26 May 2020 18:15:18 +0200
Subject: [PATCH 4/7] Convert span to button, add missing label, hide icons for
screen readers (#8011)
---
src/Umbraco.Web.UI.Client/src/less/property-editors.less | 2 +-
.../src/views/propertyeditors/datepicker/datepicker.html | 9 +++++----
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/Umbraco.Web.UI.Client/src/less/property-editors.less b/src/Umbraco.Web.UI.Client/src/less/property-editors.less
index 764b73c593..b5870b8dce 100644
--- a/src/Umbraco.Web.UI.Client/src/less/property-editors.less
+++ b/src/Umbraco.Web.UI.Client/src/less/property-editors.less
@@ -863,11 +863,11 @@
.bootstrap-datetimepicker-widget .picker-switch .btn{ background: none; border: none;}
.umb-datepicker .input-append .add-on{cursor: pointer;}
.umb-datepicker .input-append .on-top {
+ border: 0 none;
position: absolute;
margin-left: -31px;
margin-top: 1px;
display: inline-block;
- height: 22px;
padding: 5px 6px 3px 6px;
font-size: @baseFontSize;
font-weight: normal;
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/datepicker/datepicker.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/datepicker/datepicker.html
index e697dc56a5..b35663c3df 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/datepicker/datepicker.html
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/datepicker/datepicker.html
@@ -20,10 +20,11 @@
ng-required="model.validation.mandatory"
val-server="value"
class="datepickerinput">
-
-
-
-
+
+
From 62b0886afe8b6bbc394709be51376c446b3961be Mon Sep 17 00:00:00 2001
From: BatJan
Date: Sat, 16 May 2020 20:23:44 +0200
Subject: [PATCH 5/7] Fix label alignment
---
.../src/less/components/umb-form-check.less | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/Umbraco.Web.UI.Client/src/less/components/umb-form-check.less b/src/Umbraco.Web.UI.Client/src/less/components/umb-form-check.less
index a52f81b92a..9a3760444d 100644
--- a/src/Umbraco.Web.UI.Client/src/less/components/umb-form-check.less
+++ b/src/Umbraco.Web.UI.Client/src/less/components/umb-form-check.less
@@ -18,6 +18,8 @@ label.umb-form-check--checkbox{
}
.umb-form-check__info {
margin-left:20px;
+ position: relative;
+ top: 3px;
}
From 30900c59aef9d160136f559ac230ef060572b40b Mon Sep 17 00:00:00 2001
From: BatJan
Date: Sat, 16 May 2020 21:00:41 +0200
Subject: [PATCH 6/7] Add disable-dirty-check option
---
.../components/forms/umbcheckbox.directive.js | 4 +++-
.../views/components/forms/umb-checkbox.html | 19 ++++++++++++++++---
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/forms/umbcheckbox.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/forms/umbcheckbox.directive.js
index 9a9d6d4a76..389aec2044 100644
--- a/src/Umbraco.Web.UI.Client/src/common/directives/components/forms/umbcheckbox.directive.js
+++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/forms/umbcheckbox.directive.js
@@ -32,6 +32,7 @@
@param {boolean} required Set the checkbox to be required.
@param {callback} onChange Callback when the value of the checkbox change by interaction.
@param {string} cssClass Set a css class modifier
+@param {boolean} disableDirtyCheck Disable checking if the model is dirty
**/
@@ -84,7 +85,8 @@
required: "<",
onChange: "&?",
cssClass: "@?",
- iconClass: "@?"
+ iconClass: "@?",
+ disableDirtyCheck: "=?"
}
};
diff --git a/src/Umbraco.Web.UI.Client/src/views/components/forms/umb-checkbox.html b/src/Umbraco.Web.UI.Client/src/views/components/forms/umb-checkbox.html
index ba5adf199a..5f83d9ae53 100644
--- a/src/Umbraco.Web.UI.Client/src/views/components/forms/umb-checkbox.html
+++ b/src/Umbraco.Web.UI.Client/src/views/components/forms/umb-checkbox.html
@@ -1,7 +1,7 @@