();
-
- if (ctype != null)
- {
- foreach (var x in ctype.ContentTypeComposition)
- stack.Push(x);
- }
+
+ foreach (var x in ctype.ContentTypeComposition)
+ stack.Push(x);
while (stack.Count > 0)
{
diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj
index 5b404470b7..00ca6863ed 100644
--- a/src/Umbraco.Core/Umbraco.Core.csproj
+++ b/src/Umbraco.Core/Umbraco.Core.csproj
@@ -181,7 +181,7 @@
-
+
@@ -370,6 +370,8 @@
+
+
diff --git a/src/Umbraco.Tests/Services/ContentTypeServiceExtensionsTests.cs b/src/Umbraco.Tests/Services/ContentTypeServiceExtensionsTests.cs
index 6057443fa0..ed29cb2108 100644
--- a/src/Umbraco.Tests/Services/ContentTypeServiceExtensionsTests.cs
+++ b/src/Umbraco.Tests/Services/ContentTypeServiceExtensionsTests.cs
@@ -47,7 +47,7 @@ namespace Umbraco.Tests.Services
new[] { ct1, ct2, ct3, ct4, ct5 },
new[] { ct2.Alias },
new[] { "blah" })
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(1, availableTypes.Count());
Assert.AreEqual(ct4.Id, availableTypes.ElementAt(0).Id);
@@ -84,7 +84,7 @@ namespace Umbraco.Tests.Services
new[] { ct1, ct2, ct3, ct4 },
new string[] { },
new[] { "title" })
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(1, availableTypes.Count());
Assert.AreEqual(ct4.Id, availableTypes.ElementAt(0).Id);
@@ -120,7 +120,7 @@ namespace Umbraco.Tests.Services
ct1,
new[] { ct1, ct2, ct3, ct4 },
new [] {ct2.Alias})
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(1, availableTypes.Count());
Assert.AreEqual(ct4.Id, availableTypes.ElementAt(0).Id);
@@ -141,7 +141,7 @@ namespace Umbraco.Tests.Services
var availableTypes = service.Object.GetAvailableCompositeContentTypes(
ct1,
new[] {ct1, ct2, ct3})
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(2, availableTypes.Count());
Assert.AreEqual(ct2.Id, availableTypes.ElementAt(0).Id);
@@ -163,7 +163,7 @@ namespace Umbraco.Tests.Services
var availableTypes = service.Object.GetAvailableCompositeContentTypes(
ct1,
- new[] { ct1, ct2, ct3 });
+ new[] { ct1, ct2, ct3 }).Results;
Assert.AreEqual(0, availableTypes.Count());
}
@@ -185,7 +185,7 @@ namespace Umbraco.Tests.Services
var availableTypes = service.Object.GetAvailableCompositeContentTypes(
ct1,
- new[] { ct1, ct2, ct3 });
+ new[] { ct1, ct2, ct3 }).Results;
Assert.AreEqual(0, availableTypes.Count());
}
@@ -207,7 +207,7 @@ namespace Umbraco.Tests.Services
var availableTypes = service.Object.GetAvailableCompositeContentTypes(
ct1,
new[] { ct1, ct2, ct3 })
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(1, availableTypes.Count());
Assert.AreEqual(ct3.Id, availableTypes.Single().Id);
@@ -230,7 +230,7 @@ namespace Umbraco.Tests.Services
var availableTypes = service.Object.GetAvailableCompositeContentTypes(
ct1,
new[] { ct1, ct2, ct3 })
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(2, availableTypes.Count());
Assert.AreEqual(ct2.Id, availableTypes.ElementAt(0).Id);
@@ -257,7 +257,7 @@ namespace Umbraco.Tests.Services
var availableTypes = service.Object.GetAvailableCompositeContentTypes(
ct1,
new[] { ct1, ct2, ct3 })
- .Where(x => x.Item2).Select(x => x.Item1).ToArray();
+ .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();
Assert.AreEqual(3, availableTypes.Count());
Assert.AreEqual(ct2.Id, availableTypes.ElementAt(0).Id);
diff --git a/src/Umbraco.Web.UI.Client/src/views/common/overlays/contenttypeeditor/compositions/compositions.html b/src/Umbraco.Web.UI.Client/src/views/common/overlays/contenttypeeditor/compositions/compositions.html
index d936bfa679..a113e8309c 100644
--- a/src/Umbraco.Web.UI.Client/src/views/common/overlays/contenttypeeditor/compositions/compositions.html
+++ b/src/Umbraco.Web.UI.Client/src/views/common/overlays/contenttypeeditor/compositions/compositions.html
@@ -31,22 +31,22 @@
+ ng-class="{'-disabled': vm.isDisabled(compositeContentType.contentType.alias), '-selected': vm.isSelected(compositeContentType.contentType.alias)}">
+ ng-class="{ '-selected': model.compositeContentTypes.indexOf(compositeContentType.contentType.alias)+1 }">
-