diff --git a/src/Umbraco.Core/ContentVariationExtensions.cs b/src/Umbraco.Core/ContentVariationExtensions.cs
index 7cec5df27f..6430c75686 100644
--- a/src/Umbraco.Core/ContentVariationExtensions.cs
+++ b/src/Umbraco.Core/ContentVariationExtensions.cs
@@ -18,33 +18,6 @@ namespace Umbraco.Core
///
public static bool VariesByNothing(this ISimpleContentType contentType) => contentType.Variations.VariesByNothing();
- ///
- /// Determines whether the content type varies by culture.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by culture.
- ///
- public static bool VariesByCulture(this ISimpleContentType contentType) => contentType.Variations.VariesByCulture();
-
- ///
- /// Determines whether the content type varies by segment.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by segment.
- ///
- public static bool VariesBySegment(this ISimpleContentType contentType) => contentType.Variations.VariesBySegment();
-
- ///
- /// Determines whether the content type varies by culture and segment.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by culture and segment.
- ///
- public static bool VariesByCultureAndSegment(this ISimpleContentType contentType) => contentType.Variations.VariesByCultureAndSegment();
-
///
/// Determines whether the content type is invariant.
///
@@ -54,69 +27,6 @@ namespace Umbraco.Core
///
public static bool VariesByNothing(this IContentTypeBase contentType) => contentType.Variations.VariesByNothing();
- ///
- /// Determines whether the content type varies by culture.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by culture.
- ///
- public static bool VariesByCulture(this IContentTypeBase contentType) => contentType.Variations.VariesByCulture();
-
- ///
- /// Determines whether the content type varies by segment.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by segment.
- ///
- public static bool VariesBySegment(this IContentTypeBase contentType) => contentType.Variations.VariesBySegment();
-
- ///
- /// Determines whether the content type varies by culture and segment.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by culture and segment.
- ///
- public static bool VariesByCultureAndSegment(this IContentTypeBase contentType) => contentType.Variations.VariesByCultureAndSegment();
-
- ///
- /// Determines whether the property type is invariant.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type is invariant.
- ///
- public static bool VariesByNothing(this PropertyType propertyType) => propertyType.Variations.VariesByNothing();
-
- ///
- /// Determines whether the property type varies by culture.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type varies by culture.
- ///
- public static bool VariesByCulture(this PropertyType propertyType) => propertyType.Variations.VariesByCulture();
-
- ///
- /// Determines whether the property type varies by segment.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type varies by segment.
- ///
- public static bool VariesBySegment(this PropertyType propertyType) => propertyType.Variations.VariesBySegment();
-
- ///
- /// Determines whether the property type varies by culture and segment.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type varies by culture and segment.
- ///
- public static bool VariesByCultureAndSegment(this PropertyType propertyType) => propertyType.Variations.VariesByCultureAndSegment();
-
///
/// Determines whether the content type is invariant.
///
@@ -127,31 +37,13 @@ namespace Umbraco.Core
public static bool VariesByNothing(this IPublishedContentType contentType) => contentType.Variations.VariesByNothing();
///
- /// Determines whether the content type varies by culture.
+ /// Determines whether the property type is invariant.
///
- /// The content type.
+ /// The property type.
///
- /// A value indicating whether the content type varies by culture.
+ /// A value indicating whether the property type is invariant.
///
- public static bool VariesByCulture(this IPublishedContentType contentType) => contentType.Variations.VariesByCulture();
-
- ///
- /// Determines whether the content type varies by segment.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by segment.
- ///
- public static bool VariesBySegment(this IPublishedContentType contentType) => contentType.Variations.VariesBySegment();
-
- ///
- /// Determines whether the content type varies by culture and segment.
- ///
- /// The content type.
- ///
- /// A value indicating whether the content type varies by culture and segment.
- ///
- public static bool VariesByCultureAndSegment(this IPublishedContentType contentType) => contentType.Variations.VariesByCultureAndSegment();
+ public static bool VariesByNothing(this PropertyType propertyType) => propertyType.Variations.VariesByNothing();
///
/// Determines whether the property type is invariant.
@@ -162,33 +54,6 @@ namespace Umbraco.Core
///
public static bool VariesByNothing(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesByNothing();
- ///
- /// Determines whether the property type varies by culture.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type varies by culture.
- ///
- public static bool VariesByCulture(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesByCulture();
-
- ///
- /// Determines whether the property type varies by segment.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type varies by segment.
- ///
- public static bool VariesBySegment(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesBySegment();
-
- ///
- /// Determines whether the property type varies by culture and segment.
- ///
- /// The property type.
- ///
- /// A value indicating whether the property type varies by culture and segment.
- ///
- public static bool VariesByCultureAndSegment(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesByCultureAndSegment();
-
///
/// Determines whether a variation is invariant.
///
@@ -198,6 +63,51 @@ namespace Umbraco.Core
///
public static bool VariesByNothing(this ContentVariation variation) => variation == ContentVariation.Nothing;
+ ///
+ /// Determines whether the content type varies by culture.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by culture.
+ ///
+ public static bool VariesByCulture(this ISimpleContentType contentType) => contentType.Variations.VariesByCulture();
+
+ ///
+ /// Determines whether the content type varies by culture.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by culture.
+ ///
+ public static bool VariesByCulture(this IContentTypeBase contentType) => contentType.Variations.VariesByCulture();
+
+ ///
+ /// Determines whether the content type varies by culture.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by culture.
+ ///
+ public static bool VariesByCulture(this IPublishedContentType contentType) => contentType.Variations.VariesByCulture();
+
+ ///
+ /// Determines whether the property type varies by culture.
+ ///
+ /// The property type.
+ ///
+ /// A value indicating whether the property type varies by culture.
+ ///
+ public static bool VariesByCulture(this PropertyType propertyType) => propertyType.Variations.VariesByCulture();
+
+ ///
+ /// Determines whether the property type varies by culture.
+ ///
+ /// The property type.
+ ///
+ /// A value indicating whether the property type varies by culture.
+ ///
+ public static bool VariesByCulture(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesByCulture();
+
///
/// Determines whether a variation varies by culture.
///
@@ -207,6 +117,51 @@ namespace Umbraco.Core
///
public static bool VariesByCulture(this ContentVariation variation) => (variation & ContentVariation.Culture) > 0;
+ ///
+ /// Determines whether the content type varies by segment.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by segment.
+ ///
+ public static bool VariesBySegment(this ISimpleContentType contentType) => contentType.Variations.VariesBySegment();
+
+ ///
+ /// Determines whether the content type varies by segment.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by segment.
+ ///
+ public static bool VariesBySegment(this IContentTypeBase contentType) => contentType.Variations.VariesBySegment();
+
+ ///
+ /// Determines whether the content type varies by segment.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by segment.
+ ///
+ public static bool VariesBySegment(this IPublishedContentType contentType) => contentType.Variations.VariesBySegment();
+
+ ///
+ /// Determines whether the property type varies by segment.
+ ///
+ /// The property type.
+ ///
+ /// A value indicating whether the property type varies by segment.
+ ///
+ public static bool VariesBySegment(this PropertyType propertyType) => propertyType.Variations.VariesBySegment();
+
+ ///
+ /// Determines whether the property type varies by segment.
+ ///
+ /// The property type.
+ ///
+ /// A value indicating whether the property type varies by segment.
+ ///
+ public static bool VariesBySegment(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesBySegment();
+
///
/// Determines whether a variation varies by segment.
///
@@ -216,6 +171,51 @@ namespace Umbraco.Core
///
public static bool VariesBySegment(this ContentVariation variation) => (variation & ContentVariation.Segment) > 0;
+ ///
+ /// Determines whether the content type varies by culture and segment.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by culture and segment.
+ ///
+ public static bool VariesByCultureAndSegment(this ISimpleContentType contentType) => contentType.Variations.VariesByCultureAndSegment();
+
+ ///
+ /// Determines whether the content type varies by culture and segment.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by culture and segment.
+ ///
+ public static bool VariesByCultureAndSegment(this IContentTypeBase contentType) => contentType.Variations.VariesByCultureAndSegment();
+
+ ///
+ /// Determines whether the content type varies by culture and segment.
+ ///
+ /// The content type.
+ ///
+ /// A value indicating whether the content type varies by culture and segment.
+ ///
+ public static bool VariesByCultureAndSegment(this IPublishedContentType contentType) => contentType.Variations.VariesByCultureAndSegment();
+
+ ///
+ /// Determines whether the property type varies by culture and segment.
+ ///
+ /// The property type.
+ ///
+ /// A value indicating whether the property type varies by culture and segment.
+ ///
+ public static bool VariesByCultureAndSegment(this PropertyType propertyType) => propertyType.Variations.VariesByCultureAndSegment();
+
+ ///
+ /// Determines whether the property type varies by culture and segment.
+ ///
+ /// The property type.
+ ///
+ /// A value indicating whether the property type varies by culture and segment.
+ ///
+ public static bool VariesByCultureAndSegment(this IPublishedPropertyType propertyType) => propertyType.Variations.VariesByCultureAndSegment();
+
///
/// Determines whether a variation varies by culture and segment.
///
@@ -225,6 +225,47 @@ namespace Umbraco.Core
///
public static bool VariesByCultureAndSegment(this ContentVariation variation) => (variation & ContentVariation.CultureAndSegment) == ContentVariation.CultureAndSegment;
+ ///
+ /// Sets or removes the content type variation depending on the specified value.
+ ///
+ /// The content type.
+ /// The variation to set or remove.
+ /// If set to true sets the variation; otherwise, removes the variation.
+ ///
+ /// This method does not support setting the variation to nothing.
+ ///
+ public static void SetVariesBy(this IContentTypeBase contentType, ContentVariation variation, bool value = true) => contentType.Variations = contentType.Variations.SetVariesBy(variation, value);
+
+ ///
+ /// Sets or removes the property type variation depending on the specified value.
+ ///
+ /// The property type.
+ /// The variation to set or remove.
+ /// If set to true sets the variation; otherwise, removes the variation.
+ ///
+ /// This method does not support setting the variation to nothing.
+ ///
+ public static void SetVariesBy(this PropertyType propertyType, ContentVariation variation, bool value = true) => propertyType.Variations = propertyType.Variations.SetVariesBy(variation, value);
+
+ ///
+ /// Returns the variations with the variation set or removed depending on the specified value.
+ ///
+ /// The existing variations.
+ /// The variation to set or remove.
+ /// If set to true sets the variation; otherwise, removes the variation.
+ ///
+ /// The variations with the variation set or removed.
+ ///
+ ///
+ /// This method does not support setting the variation to nothing.
+ ///
+ public static ContentVariation SetVariesBy(this ContentVariation variations, ContentVariation variation, bool value = true)
+ {
+ return value
+ ? variations | variation // Set flag using bitwise logical OR
+ : variations & ~variation; // Remove flag using bitwise logical AND with bitwise complement (reversing the bit)
+ }
+
///
/// Validates that a combination of culture and segment is valid for the variation.
///
@@ -298,46 +339,5 @@ namespace Umbraco.Core
return true;
}
-
- ///
- /// Sets or removes the content type variation depending on the specified value.
- ///
- /// The content type.
- /// The variation to set or remove.
- /// If set to true sets the variation; otherwise, removes the variation.
- ///
- /// This method does not support setting the variation to nothing.
- ///
- public static void SetVariesBy(this IContentTypeBase contentType, ContentVariation variation, bool value = true) => contentType.Variations = contentType.Variations.SetVariesBy(variation, value);
-
- ///
- /// Sets or removes the property type variation depending on the specified value.
- ///
- /// The property type.
- /// The variation to set or remove.
- /// If set to true sets the variation; otherwise, removes the variation.
- ///
- /// This method does not support setting the variation to nothing.
- ///
- public static void SetVariesBy(this PropertyType propertyType, ContentVariation variation, bool value = true) => propertyType.Variations = propertyType.Variations.SetVariesBy(variation, value);
-
- ///
- /// Returns the variations with the variation set or removed depending on the specified value.
- ///
- /// The existing variations.
- /// The variation to set or remove.
- /// If set to true sets the variation; otherwise, removes the variation.
- ///
- /// The variations with the variation set or removed.
- ///
- ///
- /// This method does not support setting the variation to nothing.
- ///
- public static ContentVariation SetVariesBy(this ContentVariation variations, ContentVariation variation, bool value = true)
- {
- return value
- ? variations | variation // Set flag using bitwise logical OR
- : variations & ~variation; // Remove flag using bitwise logical AND with bitwise complement (reversing the bit)
- }
}
}