From 02188393f23f0dd9c80911e011dd8f6496f7c317 Mon Sep 17 00:00:00 2001 From: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com> Date: Thu, 14 Dec 2023 09:11:37 +0100 Subject: [PATCH 1/4] bumb version --- version.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.json b/version.json index 308cdf5c7d..26ecc33103 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json", - "version": "13.0.0", + "version": "13.0.1", "assemblyVersion": { "precision": "build" }, From c930b91eded095cb946afd4f1a03d9256a636d53 Mon Sep 17 00:00:00 2001 From: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com> Date: Thu, 14 Dec 2023 11:44:55 +0100 Subject: [PATCH 2/4] 13: Add old databasemodel to ChangeLogStatusCode migration (#15454) * Add old model to migration and use that instead * Remove new column --- .../Upgrade/V_13_0_0/ChangeLogStatusCode.cs | 70 +++++++++++++++++-- 1 file changed, 64 insertions(+), 6 deletions(-) diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_13_0_0/ChangeLogStatusCode.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_13_0_0/ChangeLogStatusCode.cs index 2df244be8c..3aaf2442aa 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_13_0_0/ChangeLogStatusCode.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_13_0_0/ChangeLogStatusCode.cs @@ -2,7 +2,7 @@ using NPoco; using Umbraco.Cms.Core; using Umbraco.Cms.Infrastructure.Persistence; -using Umbraco.Cms.Infrastructure.Persistence.Dtos; +using Umbraco.Cms.Infrastructure.Persistence.DatabaseAnnotations; using Umbraco.Extensions; namespace Umbraco.Cms.Infrastructure.Migrations.Upgrade.V_13_0_0; @@ -21,18 +21,18 @@ public class ChangeLogStatusCode : MigrationBase } Sql fetchQuery = Database.SqlContext.Sql() - .Select() - .From(); + .Select() + .From(); // Use a custom SQL query to prevent selecting explicit columns (sortOrder doesn't exist yet) - List webhookLogDtos = Database.Fetch(fetchQuery); + List webhookLogDtos = Database.Fetch(fetchQuery); Sql deleteQuery = Database.SqlContext.Sql() - .Delete(); + .Delete(); Database.Execute(deleteQuery); - foreach (WebhookLogDto webhookLogDto in webhookLogDtos) + foreach (WebhookLogDtoOld webhookLogDto in webhookLogDtos) { if (Enum.TryParse(webhookLogDto.StatusCode, out HttpStatusCode statusCode)) { @@ -42,4 +42,62 @@ public class ChangeLogStatusCode : MigrationBase Database.InsertBatch(webhookLogDtos); } + + [TableName(Constants.DatabaseSchema.Tables.WebhookLog)] + [PrimaryKey("id")] + [ExplicitColumns] + private class WebhookLogDtoOld + { + [Column("id")] + [PrimaryKeyColumn(AutoIncrement = true)] + public int Id { get; set; } + + [Column("webhookKey")] public Guid WebhookKey { get; set; } + + [Column(Name = "key")] + [NullSetting(NullSetting = NullSettings.NotNull)] + public Guid Key { get; set; } + + [Column(Name = "statusCode")] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string StatusCode { get; set; } = string.Empty; + + [Column(Name = "date")] + [Index(IndexTypes.NonClustered, Name = "IX_" + Constants.DatabaseSchema.Tables.WebhookLog + "_date")] + [NullSetting(NullSetting = NullSettings.NotNull)] + public DateTime Date { get; set; } + + [Column(Name = "url")] + [SpecialDbType(SpecialDbTypes.NVARCHARMAX)] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string Url { get; set; } = string.Empty; + + [Column(Name = "eventAlias")] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string EventAlias { get; set; } = string.Empty; + + [Column(Name = "retryCount")] + [NullSetting(NullSetting = NullSettings.NotNull)] + public int RetryCount { get; set; } + + [Column(Name = "requestHeaders")] + [SpecialDbType(SpecialDbTypes.NVARCHARMAX)] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string RequestHeaders { get; set; } = string.Empty; + + [Column(Name = "requestBody")] + [SpecialDbType(SpecialDbTypes.NVARCHARMAX)] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string RequestBody { get; set; } = string.Empty; + + [Column(Name = "responseHeaders")] + [SpecialDbType(SpecialDbTypes.NVARCHARMAX)] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string ResponseHeaders { get; set; } = string.Empty; + + [Column(Name = "responseBody")] + [SpecialDbType(SpecialDbTypes.NVARCHARMAX)] + [NullSetting(NullSetting = NullSettings.NotNull)] + public string ResponseBody { get; set; } = string.Empty; + } } From cedfdcc9b20cbb9ce588d5b2bd49eb3b7553f14d Mon Sep 17 00:00:00 2001 From: Chris Fitz-Avon Date: Thu, 14 Dec 2023 12:49:46 +0000 Subject: [PATCH 3/4] Remove content section access policy from GetAllLanguages endpoint. #15435 (#15450) --- src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs b/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs index cc7e510fe2..57f952ebcd 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs @@ -44,7 +44,6 @@ public class LanguageController : UmbracoAuthorizedJsonController /// /// [HttpGet] - [Authorize(Policy = AuthorizationPolicies.SectionAccessContent)] public IEnumerable? GetAllLanguages() { IEnumerable allLanguages = _localizationService.GetAllLanguages(); From 36b7b86384698872ac4bfe112ddf4bd9d1a42a3a Mon Sep 17 00:00:00 2001 From: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com> Date: Thu, 14 Dec 2023 13:57:52 +0100 Subject: [PATCH 4/4] Remove sections setting authorization policy (#15456) --- src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs b/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs index 57f952ebcd..3e54bb705a 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs @@ -18,7 +18,6 @@ namespace Umbraco.Cms.Web.BackOffice.Controllers; /// Backoffice controller supporting the dashboard for language administration. /// [PluginController(Constants.Web.Mvc.BackOfficeApiArea)] -[Authorize(Policy = AuthorizationPolicies.SectionAccessSettings)] public class LanguageController : UmbracoAuthorizedJsonController { private readonly ILocalizationService _localizationService;