From 0cf6548f86bf9f20c3cf83951e05cb34e744a821 Mon Sep 17 00:00:00 2001 From: Stephan Date: Tue, 15 Mar 2016 17:26:05 +0100 Subject: [PATCH] U4-7109 - could not change language in Culture and Hostnames --- .../WebServices/DomainsApiController.cs | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/Umbraco.Web/WebServices/DomainsApiController.cs b/src/Umbraco.Web/WebServices/DomainsApiController.cs index 3ea24135a7..30288fe8df 100644 --- a/src/Umbraco.Web/WebServices/DomainsApiController.cs +++ b/src/Umbraco.Web/WebServices/DomainsApiController.cs @@ -55,28 +55,29 @@ namespace Umbraco.Web.WebServices if (language != null) { + // yet there is a race condition here... var wildcard = domains.FirstOrDefault(d => d.IsWildcard); if (wildcard != null) + { wildcard.LanguageId = language.Id; + } else { - // yet there is a race condition here... - var newDomain = new UmbracoDomain("*" + model.NodeId) + wildcard = new UmbracoDomain("*" + model.NodeId) { LanguageId = model.Language, RootContentId = model.NodeId }; - - var saveAttempt = Services.DomainService.Save(newDomain); - if (saveAttempt == false) - { - var response = Request.CreateResponse(HttpStatusCode.BadRequest); - response.Content = new StringContent("Saving new domain failed"); - response.ReasonPhrase = saveAttempt.Result.StatusType.ToString(); - throw new HttpResponseException(response); - } } - + + var saveAttempt = Services.DomainService.Save(wildcard); + if (saveAttempt == false) + { + var response = Request.CreateResponse(HttpStatusCode.BadRequest); + response.Content = new StringContent("Saving domain failed"); + response.ReasonPhrase = saveAttempt.Result.StatusType.ToString(); + throw new HttpResponseException(response); + } } else { @@ -85,7 +86,6 @@ namespace Umbraco.Web.WebServices { Services.DomainService.Delete(wildcard); } - } // process domains @@ -95,7 +95,7 @@ namespace Umbraco.Web.WebServices { Services.DomainService.Delete(domain); } - + var names = new List(); @@ -154,7 +154,7 @@ namespace Umbraco.Web.WebServices response.ReasonPhrase = saveAttempt.Result.StatusType.ToString(); throw new HttpResponseException(response); } - } + } } model.Valid = model.Domains.All(m => m.Duplicate == false);