Fixes a couple issues, changes name from PublishValues to TryPublishValues

This commit is contained in:
Shannon
2018-04-26 21:37:29 +10:00
parent e99c519032
commit 23c40cbf2c
19 changed files with 208 additions and 198 deletions

View File

@@ -306,11 +306,11 @@ namespace Umbraco.Core.Models
public bool Blueprint { get; internal set; }
/// <inheritdoc />
public virtual bool PublishAllValues()
public virtual bool TryPublishAllValues()
{
// the values we want to publish should be valid
if (ValidateAll().Any())
return false;
return false; //fixme this should return an attempt with error results
// Name and PublishName are managed by the repository, but Names and PublishNames
// must be managed here as they depend on the existing / supported variations.
@@ -321,7 +321,8 @@ namespace Umbraco.Core.Models
foreach (var (culture, name) in Names)
{
if (string.IsNullOrWhiteSpace(name))
throw new InvalidOperationException($"Cannot publish {culture ?? "invariant"} culture without a name.");
return false; //fixme this should return an attempt with error results
SetPublishInfos(culture, name, now);
}
@@ -334,14 +335,14 @@ namespace Umbraco.Core.Models
}
/// <inheritdoc />
public virtual bool PublishValues(string culture = null, string segment = null)
public virtual bool TryPublishValues(string culture = null, string segment = null)
{
// the variation should be supported by the content type
ContentType.ValidateVariation(culture, segment, throwIfInvalid: true);
// the values we want to publish should be valid
if (Validate(culture, segment).Any())
return false;
return false; //fixme this should return an attempt with error results
// Name and PublishName are managed by the repository, but Names and PublishNames
// must be managed here as they depend on the existing / supported variations.
@@ -349,7 +350,8 @@ namespace Umbraco.Core.Models
{
var name = GetName(culture);
if (string.IsNullOrWhiteSpace(name))
throw new InvalidOperationException($"Cannot publish {culture ?? "invariant"} culture without a name.");
return false; //fixme this should return an attempt with error results
SetPublishInfos(culture, name, DateTime.Now);
}

View File

@@ -168,7 +168,7 @@ namespace Umbraco.Core.Models
public static bool HasPropertyTypeVaryingByCulture(this IContent content)
{
// fixme - what about CultureSegment? what about content.ContentType.Variations?
return content.PropertyTypes.Any(x => x.Variations == ContentVariation.CultureNeutral);
return content.PropertyTypes.Any(x => x.Variations.Has(ContentVariation.CultureNeutral));
}
#endregion

View File

@@ -169,7 +169,8 @@ namespace Umbraco.Core.Models
/// <para>The document must then be published via the content service.</para>
/// <para>Values are not published if they are not valie.</para>
/// </remarks>
bool PublishAllValues();
//fixme return an Attempt with some error results if it doesn't work
bool TryPublishAllValues();
/// <summary>
/// Publishes values.
@@ -179,7 +180,8 @@ namespace Umbraco.Core.Models
/// <para>The document must then be published via the content service.</para>
/// <para>Values are not published if they are not valid.</para>
/// </remarks>
bool PublishValues(string culture = null, string segment = null);
//fixme return an Attempt with some error results if it doesn't work
bool TryPublishValues(string culture = null, string segment = null);
/// <summary>
/// Publishes the culture/any values.

View File

@@ -341,10 +341,10 @@ namespace Umbraco.Core.Persistence.Repositories.Implement
(editedCultures ?? (editedCultures = new HashSet<string>(StringComparer.OrdinalIgnoreCase))).Add(culture);
// insert content variations
Database.InsertBulk(GetContentVariationDtos(content, publishing));
Database.BulkInsertRecords(GetContentVariationDtos(content, publishing));
// insert document variations
Database.InsertBulk(GetDocumentVariationDtos(content, publishing, editedCultures));
Database.BulkInsertRecords(GetDocumentVariationDtos(content, publishing, editedCultures));
}
// refresh content
@@ -501,14 +501,14 @@ namespace Umbraco.Core.Persistence.Repositories.Implement
var deleteDocumentVariations = Sql().Delete<DocumentCultureVariationDto>().Where<DocumentCultureVariationDto>(x => x.NodeId == content.Id);
Database.Execute(deleteDocumentVariations);
// fixme is it OK to use NPoco InsertBulk here, or should we use our own BulkInsertRecords?
// fixme is we'd like to use the native NPoco InsertBulk here but it causes problems (not sure exaclty all scenarios) but by using SQL Server and updating a variants name will cause: Unable to cast object of type 'Umbraco.Core.Persistence.FaultHandling.RetryDbConnection' to type 'System.Data.SqlClient.SqlConnection'.
// (same in PersistNewItem above)
// insert content variations
Database.InsertBulk(GetContentVariationDtos(content, publishing));
Database.BulkInsertRecords(GetContentVariationDtos(content, publishing));
// insert document variations
Database.InsertBulk(GetDocumentVariationDtos(content, publishing, editedCultures));
Database.BulkInsertRecords(GetDocumentVariationDtos(content, publishing, editedCultures));
}
// refresh content

View File

@@ -39,7 +39,7 @@ namespace Umbraco.Core.Publishing
try
{
d.ReleaseDate = null;
d.PublishValues(); // fixme variants?
d.TryPublishValues(); // fixme variants?
var result = _contentService.SaveAndPublish(d, d.GetWriterProfile().Id);
_logger.Debug<ContentService>($"Result of publish attempt: {result.Result}");
if (result.Success == false)

View File

@@ -1070,7 +1070,7 @@ namespace Umbraco.Core.Services.Implement
try
{
d.ReleaseDate = null;
d.PublishValues(); // fixme variants?
d.TryPublishValues(); // fixme variants?
result = SaveAndPublish(d, d.WriterId);
if (result.Success == false)
Logger.Error<ContentService>($"Failed to publish document id={d.Id}, reason={result.Result}.");
@@ -1110,7 +1110,7 @@ namespace Umbraco.Core.Services.Implement
bool IsEditing(IContent c, string l, string s)
=> c.Properties.Any(x => x.Values.Where(y => y.Culture == l && y.Segment == s).Any(y => y.EditedValue != y.PublishedValue));
return SaveAndPublishBranch(content, force, document => IsEditing(document, culture, segment), document => document.PublishValues(culture, segment), userId);
return SaveAndPublishBranch(content, force, document => IsEditing(document, culture, segment), document => document.TryPublishValues(culture, segment), userId);
}
/// <inheritdoc />

View File

@@ -106,17 +106,17 @@ namespace Umbraco.Tests.Integration
private IContent CreateBranch()
{
var content1 = MockedContent.CreateSimpleContent(_contentType, "Content1");
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
// 2 (published)
// .1 (published)
// .2 (not published)
var content2 = MockedContent.CreateSimpleContent(_contentType, "Content2", content1);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
var content21 = MockedContent.CreateSimpleContent(_contentType, "Content21", content2);
content21.PublishValues();
content21.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content21);
var content22 = MockedContent.CreateSimpleContent(_contentType, "Content22", content2);
ServiceContext.ContentService.Save(content22);
@@ -135,12 +135,12 @@ namespace Umbraco.Tests.Integration
// .1 (published)
// .2 (not published)
var content4 = MockedContent.CreateSimpleContent(_contentType, "Content4", content1);
content4.PublishValues();
content4.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content4);
content4.Name = "Content4X";
ServiceContext.ContentService.Save(content4);
var content41 = MockedContent.CreateSimpleContent(_contentType, "Content41", content4);
content41.PublishValues();
content41.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content41);
var content42 = MockedContent.CreateSimpleContent(_contentType, "Content42", content4);
ServiceContext.ContentService.Save(content42);
@@ -149,10 +149,10 @@ namespace Umbraco.Tests.Integration
// .1 (published)
// .2 (not published)
var content5 = MockedContent.CreateSimpleContent(_contentType, "Content5", content1);
content5.PublishValues();
content5.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content5);
var content51 = MockedContent.CreateSimpleContent(_contentType, "Content51", content5);
content51.PublishValues();
content51.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content51);
var content52 = MockedContent.CreateSimpleContent(_contentType, "Content52", content5);
ServiceContext.ContentService.Save(content52);
@@ -439,7 +439,7 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -476,7 +476,7 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -513,7 +513,7 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -553,7 +553,7 @@ namespace Umbraco.Tests.Integration
ResetEvents();
content.Name = "changed";
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
Assert.AreEqual(2, _msgCount);
@@ -574,12 +574,12 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
content.Name = "changed";
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
Assert.AreEqual(2, _msgCount);
@@ -606,7 +606,7 @@ namespace Umbraco.Tests.Integration
ResetEvents();
content.Name = "changed";
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
Assert.AreEqual(2, _msgCount);
@@ -630,12 +630,12 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
content.Name = "changed";
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
Assert.AreEqual(2, _msgCount);
@@ -656,7 +656,7 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -680,7 +680,7 @@ namespace Umbraco.Tests.Integration
var content = ServiceContext.ContentService.GetRootContent().FirstOrDefault();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
content.Name = "changed";
ServiceContext.ContentService.Save(content);
@@ -741,7 +741,7 @@ namespace Umbraco.Tests.Integration
ServiceContext.ContentService.Unpublish(content1);
ResetEvents();
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
Assert.AreEqual(2, _msgCount);
@@ -984,7 +984,7 @@ namespace Umbraco.Tests.Integration
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -1008,7 +1008,7 @@ namespace Umbraco.Tests.Integration
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ServiceContext.ContentService.MoveToRecycleBin(content);
@@ -1033,7 +1033,7 @@ namespace Umbraco.Tests.Integration
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
content.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content);
@@ -1204,7 +1204,7 @@ namespace Umbraco.Tests.Integration
{
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -1224,7 +1224,7 @@ namespace Umbraco.Tests.Integration
{
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
content.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content);
@@ -1246,11 +1246,11 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ServiceContext.ContentService.Unpublish(content1);
@@ -1332,7 +1332,7 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
@@ -1354,7 +1354,7 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
content1.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content1);
@@ -1380,7 +1380,7 @@ namespace Umbraco.Tests.Integration
Assert.IsNotNull(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ResetEvents();
@@ -1402,11 +1402,11 @@ namespace Umbraco.Tests.Integration
Assert.IsNotNull(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
var content3 = CreateContent();
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ServiceContext.ContentService.Unpublish(content2);
@@ -1427,11 +1427,11 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ResetEvents();
@@ -1451,15 +1451,15 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
var content3 = CreateContent(content2.Id);
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ServiceContext.ContentService.Unpublish(content2);
@@ -1480,13 +1480,13 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
content1.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ResetEvents();
@@ -1506,17 +1506,17 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
content1.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content1);
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
var content3 = CreateContent(content2.Id);
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ServiceContext.ContentService.Unpublish(content2);
@@ -1537,16 +1537,16 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ServiceContext.ContentService.Unpublish(content1);
var content3 = CreateContent();
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ResetEvents();
@@ -1566,20 +1566,20 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ServiceContext.ContentService.Unpublish(content1);
var content3 = CreateContent();
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
var content4 = CreateContent(content3.Id);
Assert.IsNotNull(content4);
content4.PublishValues();
content4.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content4);
ServiceContext.ContentService.Unpublish(content3);
@@ -1600,18 +1600,18 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
content2.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content2);
ServiceContext.ContentService.Unpublish(content1);
var content3 = CreateContent();
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ResetEvents();
@@ -1631,22 +1631,22 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
content2.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content2);
ServiceContext.ContentService.Unpublish(content1);
var content3 = CreateContent();
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
var content4 = CreateContent(content3.Id);
Assert.IsNotNull(content4);
content4.PublishValues();
content4.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content4);
ServiceContext.ContentService.Unpublish(content3);
@@ -1667,11 +1667,11 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ServiceContext.ContentService.Unpublish(content1);
var content3 = CreateContent();
@@ -1694,11 +1694,11 @@ namespace Umbraco.Tests.Integration
{
var content1 = CreateContent();
Assert.IsNotNull(content1);
content1.PublishValues();
content1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content1);
var content2 = CreateContent(content1.Id);
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
content2.Properties.First().SetValue("changed");
ServiceContext.ContentService.Save(content2);
@@ -1778,7 +1778,7 @@ namespace Umbraco.Tests.Integration
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ResetEvents();
@@ -1832,11 +1832,11 @@ namespace Umbraco.Tests.Integration
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
var content3 = CreateContent(content2.Id);
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ServiceContext.ContentService.Unpublish(content2);
@@ -1891,7 +1891,7 @@ namespace Umbraco.Tests.Integration
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
ServiceContext.ContentService.Move(content1, content2.Id);
@@ -2001,11 +2001,11 @@ namespace Umbraco.Tests.Integration
var content2 = CreateContent();
Assert.IsNotNull(content2);
content2.PublishValues();
content2.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content2);
var content3 = CreateContent(content2.Id);
Assert.IsNotNull(content3);
content3.PublishValues();
content3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content3);
ServiceContext.ContentService.Unpublish(content2);
@@ -2081,7 +2081,7 @@ namespace Umbraco.Tests.Integration
{
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -2101,7 +2101,7 @@ namespace Umbraco.Tests.Integration
{
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
var content2 = CreateContent();
Assert.IsNotNull(content2);
@@ -2124,7 +2124,7 @@ namespace Umbraco.Tests.Integration
{
var content = CreateBranch();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
ResetEvents();
@@ -2166,17 +2166,17 @@ namespace Umbraco.Tests.Integration
{
var content = CreateContent();
Assert.IsNotNull(content);
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
var v1 = content.VersionId;
content.Properties.First().SetValue("changed");
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
var v2 = content.VersionId;
content.Properties.First().SetValue("again");
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
var v3 = content.VersionId;
@@ -2210,12 +2210,12 @@ namespace Umbraco.Tests.Integration
Assert.IsFalse(content.IsPropertyDirty("Published"));
Assert.IsFalse(content.WasPropertyDirty("Published"));
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
Assert.IsFalse(content.IsPropertyDirty("Published"));
Assert.IsTrue(content.WasPropertyDirty("Published")); // has just been published
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
Assert.IsFalse(content.IsPropertyDirty("Published"));
Assert.IsFalse(content.WasPropertyDirty("Published")); // was published already

View File

@@ -215,7 +215,7 @@ namespace Umbraco.Tests.Models
// can publish value
// and get edited and published values
content.PublishValues();
content.TryPublishValues();
Assert.AreEqual("a", content.GetValue("prop"));
Assert.AreEqual("a", content.GetValue("prop", published: true));
@@ -244,9 +244,9 @@ namespace Umbraco.Tests.Models
// can publish value
// and get edited and published values
Assert.Throws<InvalidOperationException>(() => content.PublishValues(langFr)); // no name
Assert.Throws<InvalidOperationException>(() => content.TryPublishValues(langFr)); // no name
content.SetName(langFr, "name-fr");
content.PublishValues(langFr);
content.TryPublishValues(langFr);
Assert.AreEqual("b", content.GetValue("prop"));
Assert.IsNull(content.GetValue("prop", published: true));
Assert.AreEqual("c", content.GetValue("prop", langFr));
@@ -260,7 +260,7 @@ namespace Umbraco.Tests.Models
Assert.IsNull(content.GetValue("prop", langFr, published: true));
// can publish all
content.PublishAllValues();
content.TryPublishAllValues();
Assert.AreEqual("b", content.GetValue("prop"));
Assert.AreEqual("b", content.GetValue("prop", published: true));
Assert.AreEqual("c", content.GetValue("prop", langFr));
@@ -322,12 +322,12 @@ namespace Umbraco.Tests.Models
content.SetValue("prop", "a-es", langEs);
// cannot publish without a name
Assert.Throws<InvalidOperationException>(() => content.PublishValues(langFr));
Assert.Throws<InvalidOperationException>(() => content.TryPublishValues(langFr));
// works with a name
// and then FR is available, and published
content.SetName(langFr, "name-fr");
content.PublishValues(langFr);
content.TryPublishValues(langFr);
// now UK is available too
content.SetName(langUk, "name-uk");

View File

@@ -187,13 +187,13 @@ namespace Umbraco.Tests.Persistence.NPocoTests
contentTypeService.Save(contentType);
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
id2 = content1.Id;
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", -1);
content2.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
id3 = content2.Id;

View File

@@ -140,7 +140,7 @@ namespace Umbraco.Tests.Persistence.Repositories
// publish = new edit version
content1.SetValue("title", "title");
((Content) content1).PublishValues();
((Content) content1).TryPublishValues();
((Content) content1).PublishedState = PublishedState.Publishing;
repository.Save(content1);
@@ -202,7 +202,7 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.AreEqual(false, scope.Database.ExecuteScalar<bool>($"SELECT published FROM {Constants.DatabaseSchema.Tables.Document} WHERE nodeId=@id", new { id = content1.Id }));
// publish = version
((Content) content1).PublishValues();
((Content) content1).TryPublishValues();
((Content) content1).PublishedState = PublishedState.Publishing;
repository.Save(content1);
@@ -238,7 +238,7 @@ namespace Umbraco.Tests.Persistence.Repositories
// publish = new version
content1.Name = "name-4";
content1.SetValue("title", "title-4");
((Content) content1).PublishValues();
((Content) content1).TryPublishValues();
((Content) content1).PublishedState = PublishedState.Publishing;
repository.Save(content1);
@@ -648,7 +648,7 @@ namespace Umbraco.Tests.Persistence.Repositories
// publish them all
foreach (var content in result)
{
content.PublishValues();
content.TryPublishValues();
repository.Save(content);
}

View File

@@ -146,7 +146,7 @@ namespace Umbraco.Tests.Scoping
using (var scope = ScopeProvider.CreateScope())
{
item.PublishValues();
item.TryPublishValues();
Current.Services.ContentService.SaveAndPublish(item);
scope.Complete();
}
@@ -161,7 +161,7 @@ namespace Umbraco.Tests.Scoping
using (var scope = ScopeProvider.CreateScope())
{
item.Name = "changed";
item.PublishValues();
item.TryPublishValues();
Current.Services.ContentService.SaveAndPublish(item);
if (complete)

View File

@@ -123,10 +123,10 @@ namespace Umbraco.Tests.Scoping
using (var scope = ScopeProvider.CreateScope())
{
item.PublishValues();
item.TryPublishValues();
Current.Services.ContentService.SaveAndPublish(item); // should create an xml clone
item.Name = "changed";
item.PublishValues();
item.TryPublishValues();
Current.Services.ContentService.SaveAndPublish(item); // should re-use the xml clone
// this should never change
@@ -230,13 +230,13 @@ namespace Umbraco.Tests.Scoping
using (var scope = ScopeProvider.CreateScope())
{
item.PublishValues();
item.TryPublishValues();
Current.Services.ContentService.SaveAndPublish(item);
for (var i = 0; i < count; i++)
{
var temp = new Content("content_" + i, -1, contentType);
temp.PublishValues();
temp.TryPublishValues();
Current.Services.ContentService.SaveAndPublish(temp);
ids[i] = temp.Id;
}

View File

@@ -182,16 +182,16 @@ namespace Umbraco.Tests.Services
{
var contentService = ServiceContext.ContentService;
var root = ServiceContext.ContentService.GetById(NodeDto.NodeIdSeed + 1);
root.PublishValues();
root.TryPublishValues();
Assert.IsTrue(contentService.SaveAndPublish(root).Success);
var content = contentService.CreateAndSave("Test", -1, "umbTextpage", 0);
content.PublishValues();
content.TryPublishValues();
Assert.IsTrue(contentService.SaveAndPublish(content).Success);
var hierarchy = CreateContentHierarchy().OrderBy(x => x.Level).ToArray();
contentService.Save(hierarchy, 0);
foreach (var c in hierarchy)
{
c.PublishValues();
c.TryPublishValues();
Assert.IsTrue(contentService.SaveAndPublish(c).Success);
}
@@ -241,7 +241,7 @@ namespace Umbraco.Tests.Services
// Assert
content.PublishValues();
content.TryPublishValues();
Assert.IsTrue(contentService.SaveAndPublish(content).Success);
}
@@ -256,7 +256,7 @@ namespace Umbraco.Tests.Services
for (var i = 0; i < 20; i++)
{
content.SetValue("bodyText", "hello world " + Guid.NewGuid());
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
}
@@ -395,12 +395,12 @@ namespace Umbraco.Tests.Services
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "hello", "world", "some", "tags", "plus" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", -1);
content2.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
// verify
@@ -436,7 +436,7 @@ namespace Umbraco.Tests.Services
allTags = tagService.GetAllContentTags();
Assert.AreEqual(4, allTags.Count());
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
Assert.IsTrue(content1.Published);
@@ -466,12 +466,12 @@ namespace Umbraco.Tests.Services
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "hello", "world", "some", "tags", "bam" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", -1);
content2.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
// verify
@@ -507,9 +507,9 @@ namespace Umbraco.Tests.Services
allTags = tagService.GetAllContentTags();
Assert.AreEqual(0, allTags.Count());
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
// tags are back
@@ -538,12 +538,12 @@ namespace Umbraco.Tests.Services
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "hello", "world", "some", "tags", "plus" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", content1.Id);
content2.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
// verify
@@ -578,7 +578,7 @@ namespace Umbraco.Tests.Services
allTags = tagService.GetAllContentTags();
Assert.AreEqual(0, allTags.Count());
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
Assert.IsTrue(content1.Published);
@@ -616,12 +616,12 @@ namespace Umbraco.Tests.Services
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "hello", "world", "some", "tags", "bam" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", -1);
content2.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
contentService.Unpublish(content1);
@@ -637,7 +637,7 @@ namespace Umbraco.Tests.Services
var allTags = tagService.GetAllContentTags();
Assert.AreEqual(0, allTags.Count());
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
tags = tagService.GetTagsForEntity(content2.Id);
@@ -663,12 +663,12 @@ namespace Umbraco.Tests.Services
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "hello", "world", "some", "tags", "bam" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", content1);
content2.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
contentService.Unpublish(content1);
@@ -684,7 +684,7 @@ namespace Umbraco.Tests.Services
var allTags = tagService.GetAllContentTags();
Assert.AreEqual(0, allTags.Count());
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
tags = tagService.GetTagsForEntity(content2.Id);
@@ -768,7 +768,7 @@ namespace Umbraco.Tests.Services
// create a content with tags and publish
var content = MockedContent.CreateSimpleContent(contentType, "Tagged content", -1);
content.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// edit tags and save
@@ -808,7 +808,7 @@ namespace Umbraco.Tests.Services
// Act
content.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// Assert
@@ -839,12 +839,12 @@ namespace Umbraco.Tests.Services
contentTypeService.Save(contentType);
var content = MockedContent.CreateSimpleContent(contentType, "Tagged content", -1);
content.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// Act
content.AssignTags("tags", new[] { "another", "world" }, merge: true);
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// Assert
@@ -875,12 +875,12 @@ namespace Umbraco.Tests.Services
contentTypeService.Save(contentType);
var content = MockedContent.CreateSimpleContent(contentType, "Tagged content", -1);
content.AssignTags("tags", new[] { "hello", "world", "some", "tags" });
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// Act
content.RemoveTags("tags", new[] { "some", "world" });
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// Assert
@@ -1063,7 +1063,7 @@ namespace Umbraco.Tests.Services
var parent = ServiceContext.ContentService.GetById(NodeDto.NodeIdSeed + 2);
Assert.IsFalse(parent.Published);
parent.PublishValues();
parent.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(parent); // publishing parent, so Text Page 2 can be updated.
var content = contentService.GetById(NodeDto.NodeIdSeed + 4);
@@ -1076,7 +1076,7 @@ namespace Umbraco.Tests.Services
content.Name = "Text Page 2 Updated";
content.SetValue("author", "Jane Doe");
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content); // publishes the current version, creates a version
var version2 = content.VersionId;
@@ -1084,7 +1084,7 @@ namespace Umbraco.Tests.Services
content.Name = "Text Page 2 ReUpdated";
content.SetValue("author", "Bob Hope");
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content); // publishes again, creates a version
var version3 = content.VersionId;
@@ -1151,11 +1151,11 @@ namespace Umbraco.Tests.Services
// Arrange
var contentService = ServiceContext.ContentService;
var root = contentService.GetById(NodeDto.NodeIdSeed + 2);
root.PublishValues();
root.TryPublishValues();
contentService.SaveAndPublish(root);
var content = contentService.GetById(NodeDto.NodeIdSeed + 4);
content.ExpireDate = DateTime.Now.AddSeconds(1);
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// Act
@@ -1205,7 +1205,7 @@ namespace Umbraco.Tests.Services
// Arrange
var contentService = ServiceContext.ContentService;
var content = contentService.GetById(NodeDto.NodeIdSeed + 2);
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
using (var scope = ScopeProvider.CreateScope())
@@ -1235,7 +1235,7 @@ namespace Umbraco.Tests.Services
var content = contentService.GetById(NodeDto.NodeIdSeed + 2);
// Act
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
// Assert
@@ -1249,7 +1249,7 @@ namespace Umbraco.Tests.Services
// Arrange
var contentService = ServiceContext.ContentService;
var parent = contentService.Create("parent", -1, "umbTextpage");
parent.PublishValues();
parent.TryPublishValues();
contentService.SaveAndPublish(parent);
var content = contentService.Create("child", parent, "umbTextpage");
contentService.Save(content);
@@ -1275,7 +1275,7 @@ namespace Umbraco.Tests.Services
Assert.AreEqual("Home", content.Name);
content.Name = "foo";
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
Assert.That(published.Success, Is.True);
@@ -1316,7 +1316,7 @@ namespace Umbraco.Tests.Services
var parent = contentService.GetById(parentId);
var parentCanPublishValues = parent.PublishValues();
var parentCanPublishValues = parent.TryPublishValues();
var parentPublished = contentService.SaveAndPublish(parent);
// parent can publish values
@@ -1325,7 +1325,7 @@ namespace Umbraco.Tests.Services
Assert.IsTrue(parentPublished.Success);
Assert.IsTrue(parent.Published);
var contentCanPublishValues = content.PublishValues();
var contentCanPublishValues = content.TryPublishValues();
var contentPublished = contentService.SaveAndPublish(content);
// content cannot publish values because they are invalid
@@ -1401,11 +1401,11 @@ namespace Umbraco.Tests.Services
contentService.Save(content);
var parent = contentService.GetById(NodeDto.NodeIdSeed + 2);
parent.PublishValues();
parent.TryPublishValues();
var parentPublished = contentService.SaveAndPublish(parent, 0);//Publish root Home node to enable publishing of 'NodeDto.NodeIdSeed + 3'
// Act
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
// Assert
@@ -1424,11 +1424,11 @@ namespace Umbraco.Tests.Services
contentService.Save(content, 0);
var parent = contentService.GetById(NodeDto.NodeIdSeed + 2);
parent.PublishValues();
parent.TryPublishValues();
var parentPublished = contentService.SaveAndPublish(parent, 0);//Publish root Home node to enable publishing of 'NodeDto.NodeIdSeed + 3'
// Act
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
// Assert
@@ -1461,7 +1461,7 @@ namespace Umbraco.Tests.Services
var content = contentService.GetById(NodeDto.NodeIdSeed + 5);
// Act
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
// Assert
@@ -1479,7 +1479,7 @@ namespace Umbraco.Tests.Services
content.SetValue("author", "Barack Obama");
// Act
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
// Assert
@@ -1504,14 +1504,14 @@ namespace Umbraco.Tests.Services
content.SetValue("author", "Barack Obama");
// Act
content.PublishValues();
content.TryPublishValues();
var published = contentService.SaveAndPublish(content, 0);
var childContent = contentService.Create("Child", content.Id, "umbTextpage", 0);
// Reset all identity properties
childContent.Id = 0;
childContent.Path = null;
((Content)childContent).ResetIdentity();
childContent.PublishValues();
childContent.TryPublishValues();
var childPublished = contentService.SaveAndPublish(childContent, 0);
// Assert
@@ -1530,12 +1530,12 @@ namespace Umbraco.Tests.Services
var contentService = ServiceContext.ContentService;
var root = contentService.GetById(NodeDto.NodeIdSeed + 2);
root.PublishValues();
root.TryPublishValues();
var rootPublished = contentService.SaveAndPublish(root);
var content = contentService.GetById(NodeDto.NodeIdSeed + 4);
content.Properties["title"].SetValue(content.Properties["title"].GetValue() + " Published");
content.PublishValues();
content.TryPublishValues();
var contentPublished = contentService.SaveAndPublish(content);
var publishedVersion = content.VersionId;
@@ -1835,13 +1835,13 @@ namespace Umbraco.Tests.Services
content1.PropertyValues(obj);
content1.ResetDirtyProperties(false);
ServiceContext.ContentService.Save(content1, 0);
content1.PublishValues();
content1.TryPublishValues();
Assert.IsTrue(ServiceContext.ContentService.SaveAndPublish(content1, 0).Success);
var content2 = MockedContent.CreateBasicContent(contentType);
content2.PropertyValues(obj);
content2.ResetDirtyProperties(false);
ServiceContext.ContentService.Save(content2, 0);
content2.PublishValues();
content2.TryPublishValues();
Assert.IsTrue(ServiceContext.ContentService.SaveAndPublish(content2, 0).Success);
var editorGroup = ServiceContext.UserService.GetUserGroupByAlias("editor");
@@ -1999,7 +1999,7 @@ namespace Umbraco.Tests.Services
Assert.AreEqual(0, contentTags.Length);
// publish
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// now tags have been set (published)
@@ -2016,7 +2016,7 @@ namespace Umbraco.Tests.Services
Assert.AreEqual(0, copiedTags.Length);
// publish
copy.PublishValues();
copy.TryPublishValues();
contentService.SaveAndPublish(copy);
// now tags have been set (published)
@@ -2035,7 +2035,7 @@ namespace Umbraco.Tests.Services
var parent = ServiceContext.ContentService.GetById(NodeDto.NodeIdSeed + 2);
Assert.IsFalse(parent.Published);
parent.PublishValues();
parent.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(parent); // publishing parent, so Text Page 2 can be updated.
var content = contentService.GetById(NodeDto.NodeIdSeed + 4);
@@ -2052,7 +2052,7 @@ namespace Umbraco.Tests.Services
// non published = edited
Assert.IsTrue(content.Edited);
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content); // new version
var version2 = content.VersionId;
Assert.AreNotEqual(version1, version2);
@@ -2077,7 +2077,7 @@ namespace Umbraco.Tests.Services
content.Name = "Text Page 2 ReReUpdated";
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content); // new version
var version3 = content.VersionId;
Assert.AreNotEqual(version2, version3);
@@ -2133,7 +2133,7 @@ namespace Umbraco.Tests.Services
content = contentService.GetById(content.Id);
Assert.AreEqual("Text Page 2 ReReUpdated", content.Name);
Assert.AreEqual("Jane Doe", content.GetValue<string>("author"));
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
Assert.IsFalse(content.Edited);
content.Name = "Xxx";
@@ -2251,7 +2251,7 @@ namespace Umbraco.Tests.Services
Assert.IsFalse(scope.Database.Exists<ContentXmlDto>(content.Id));
}
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
using (var scope = ScopeProvider.CreateScope())
@@ -2393,7 +2393,7 @@ namespace Umbraco.Tests.Services
// becomes Published, !Edited
// creates a new version
// can get published property values
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
Assert.IsTrue(content.Published);
@@ -2548,8 +2548,8 @@ namespace Umbraco.Tests.Services
// act
content.PublishValues(langFr.IsoCode);
content.PublishValues(langUk.IsoCode);
content.TryPublishValues(langFr.IsoCode);
content.TryPublishValues(langUk.IsoCode);
contentService.SaveAndPublish(content);
// both FR and UK have been published,
@@ -2591,7 +2591,7 @@ namespace Umbraco.Tests.Services
// act
content.PublishValues();
content.TryPublishValues();
contentService.SaveAndPublish(content);
// now it has publish name for invariant neutral
@@ -2780,7 +2780,7 @@ namespace Umbraco.Tests.Services
// act
content.PublishValues(langUk.IsoCode);
content.TryPublishValues(langUk.IsoCode);
contentService.SaveAndPublish(content);
content2 = contentService.GetById(content.Id);

View File

@@ -88,7 +88,7 @@ namespace Umbraco.Tests.Services
var contentType = contentTypes[index];
var contentItem = MockedContent.CreateSimpleContent(contentType, "MyName_" + index + "_" + i, parentId);
ServiceContext.ContentService.Save(contentItem);
contentItem.PublishValues();
contentItem.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(contentItem);
parentId = contentItem.Id;
@@ -189,7 +189,7 @@ namespace Umbraco.Tests.Services
var contentType = contentTypes[index];
var contentItem = MockedContent.CreateSimpleContent(contentType, "MyName_" + index + "_" + i, parentId);
ServiceContext.ContentService.Save(contentItem);
contentItem.PublishValues();
contentItem.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(contentItem);
parentId = contentItem.Id;
}
@@ -225,19 +225,19 @@ namespace Umbraco.Tests.Services
var root = MockedContent.CreateSimpleContent(contentType1, "Root", -1);
ServiceContext.ContentService.Save(root);
root.PublishValues();
root.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(root);
var level1 = MockedContent.CreateSimpleContent(contentType2, "L1", root.Id);
ServiceContext.ContentService.Save(level1);
level1.PublishValues();
level1.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(level1);
for (int i = 0; i < 2; i++)
{
var level3 = MockedContent.CreateSimpleContent(contentType3, "L2" + i, level1.Id);
ServiceContext.ContentService.Save(level3);
level3.PublishValues();
level3.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(level3);
}
@@ -267,7 +267,7 @@ namespace Umbraco.Tests.Services
ServiceContext.FileService.SaveTemplate(contentType1.DefaultTemplate);
ServiceContext.ContentTypeService.Save(contentType1);
IContent contentItem = MockedContent.CreateTextpageContent(contentType1, "Testing", -1);
contentItem.PublishValues();
contentItem.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(contentItem);
var initProps = contentItem.Properties.Count;
var initPropTypes = contentItem.PropertyTypes.Count();
@@ -297,14 +297,14 @@ namespace Umbraco.Tests.Services
var contentItems1 = MockedContent.CreateTextpageContent(contentType1, -1, 10).ToArray();
foreach (var x in contentItems1)
{
x.PublishValues();
x.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(x);
}
var contentItems2 = MockedContent.CreateTextpageContent(contentType2, -1, 5).ToArray();
foreach (var x in contentItems2)
{
x.PublishValues();
x.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(x);
}
@@ -362,7 +362,7 @@ namespace Umbraco.Tests.Services
var contentItems1 = MockedContent.CreateTextpageContent(contentType1, -1, 10).ToArray();
foreach (var x in contentItems1)
{
x.PublishValues();
x.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(x);
}
var alias = contentType1.PropertyTypes.First().Alias;
@@ -496,7 +496,7 @@ namespace Umbraco.Tests.Services
// Act
var homeDoc = cs.Create("Home Page", -1, contentTypeAlias);
homeDoc.PublishValues();
homeDoc.TryPublishValues();
cs.SaveAndPublish(homeDoc);
// Assert

View File

@@ -249,7 +249,7 @@ namespace Umbraco.Tests.Services
var result = new List<IContent>();
ServiceContext.ContentTypeService.Save(contentType1);
IContent lastParent = MockedContent.CreateSimpleContent(contentType1);
lastParent.PublishValues();
lastParent.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(lastParent);
result.Add(lastParent);
//create 20 deep
@@ -263,7 +263,7 @@ namespace Umbraco.Tests.Services
//only publish evens
if (j % 2 == 0)
{
content.PublishValues();
content.TryPublishValues();
ServiceContext.ContentService.SaveAndPublish(content);
}
else

View File

@@ -36,21 +36,21 @@ namespace Umbraco.Tests.Services
IContent content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "cow", "pig", "goat" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
// change
content1.AssignTags("tags", new[] { "elephant" }, true);
content1.RemoveTags("tags", new[] { "cow" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
// more changes
content1.AssignTags("tags", new[] { "mouse" }, true);
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
content1.RemoveTags("tags", new[] { "mouse" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
// get it back
@@ -88,17 +88,17 @@ namespace Umbraco.Tests.Services
var content1 = MockedContent.CreateSimpleContent(contentType, "Tagged content 1", -1);
content1.AssignTags("tags", new[] { "cow", "pig", "goat" });
content1.PublishValues();
content1.TryPublishValues();
contentService.SaveAndPublish(content1);
var content2 = MockedContent.CreateSimpleContent(contentType, "Tagged content 2", -1);
content2.AssignTags("tags", new[] { "cow", "pig" });
content2.PublishValues();
content2.TryPublishValues();
contentService.SaveAndPublish(content2);
var content3 = MockedContent.CreateSimpleContent(contentType, "Tagged content 3", -1);
content3.AssignTags("tags", new[] { "cow" });
content3.PublishValues();
content3.TryPublishValues();
contentService.SaveAndPublish(content3);
// Act

View File

@@ -643,22 +643,22 @@ namespace Umbraco.Web.Editors
else
{
//publish the item and check if it worked, if not we will show a diff msg below
contentItem.PersistedContent.PublishValues(GetLanguageCulture(contentItem.LanguageId)); //we are not checking for a return value here because we've alraedy pre-validated the property values
contentItem.PersistedContent.TryPublishValues(GetLanguageCulture(contentItem.LanguageId)); //we are not checking for a return value here because we've already pre-validated the property values
//check if we are publishing other variants and validate them
var allLangs = Services.LocalizationService.GetAllLanguages().ToList();
var allLangs = Services.LocalizationService.GetAllLanguages().ToDictionary(x => x.Id, x => x);
var variantsToValidate = contentItem.PublishVariations.Where(x => x.LanguageId != contentItem.LanguageId).ToList();
foreach (var publishVariation in variantsToValidate)
{
if (!contentItem.PersistedContent.PublishValues(GetLanguageCulture(publishVariation.LanguageId)))
if (!contentItem.PersistedContent.TryPublishValues(GetLanguageCulture(publishVariation.LanguageId)))
{
var errMsg = Services.TextService.Localize("speechBubbles/contentLangValidationError", new[]{allLangs.First(x => x.Id == publishVariation.LanguageId).CultureName});
var errMsg = Services.TextService.Localize("speechBubbles/contentLangValidationError", new[] {allLangs[publishVariation.LanguageId].CultureName});
ModelState.AddModelError("publish_variant_" + publishVariation.LanguageId + "_", errMsg);
}
}
//validate any mandatory variants that are not in the list
var mandatoryLangs = Mapper.Map<IEnumerable<ILanguage>, IEnumerable<Language>>(allLangs)
var mandatoryLangs = Mapper.Map<IEnumerable<ILanguage>, IEnumerable<Language>>(allLangs.Values)
.Where(x => variantsToValidate.All(v => v.LanguageId != x.Id)) //don't include variants above
.Where(x => x.Id != contentItem.LanguageId) //don't include the current variant
.Where(x => x.Mandatory);
@@ -666,7 +666,7 @@ namespace Umbraco.Web.Editors
{
if (contentItem.PersistedContent.Validate(GetLanguageCulture(lang.Id)).Length > 0)
{
var errMsg = Services.TextService.Localize("speechBubbles/contentReqLangValidationError", new[]{allLangs.First(x => x.Id == lang.Id).CultureName});
var errMsg = Services.TextService.Localize("speechBubbles/contentReqLangValidationError", new[]{allLangs[lang.Id].CultureName});
ModelState.AddModelError("publish_variant_" + lang.Id + "_", errMsg);
}
}
@@ -749,7 +749,7 @@ namespace Umbraco.Web.Editors
return HandleContentNotFound(id, false);
}
foundContent.PublishValues(); // fixme variants?
foundContent.TryPublishValues(); // fixme variants?
var publishResult = Services.ContentService.SaveAndPublish(foundContent, Security.GetUserId().ResultOr(0));
if (publishResult.Success == false)
{

View File

@@ -1,4 +1,5 @@
using AutoMapper;
using Umbraco.Core;
using Umbraco.Core.Models;
using Umbraco.Web.Models.ContentEditing;
using ContentVariation = Umbraco.Core.Models.ContentVariation;
@@ -13,7 +14,12 @@ namespace Umbraco.Web.Models.Mapping
public string Resolve(IContent source, ContentItemDisplay destination, string destMember, ResolutionContext context)
{
var culture = context.GetCulture();
return source.GetName(culture);
if (culture != null && source.ContentType.Variations.Has(ContentVariation.CultureNeutral))
{
//return the culture name being requested
return source.GetName(culture);
}
return source.Name;
}
}
}

View File

@@ -29,7 +29,7 @@ namespace Umbraco.Web.WebServices
if (publishDescendants == false)
{
content.PublishValues(); // fixme variants? validation - when this returns null?
content.TryPublishValues(); // fixme variants? validation - when this returns null?
var result = Services.ContentService.SaveAndPublish(content, Security.CurrentUser.Id);
return Json(new
{