diff --git a/src/Umbraco.Tests/PropertyEditors/ImageCropperTest.cs b/src/Umbraco.Tests/PropertyEditors/ImageCropperTest.cs
index 3f4fc91ed4..c0135dff36 100644
--- a/src/Umbraco.Tests/PropertyEditors/ImageCropperTest.cs
+++ b/src/Umbraco.Tests/PropertyEditors/ImageCropperTest.cs
@@ -92,5 +92,25 @@ namespace Umbraco.Tests.PropertyEditors
var urlString = mediaPath.GetCropUrl(imageCropperValue: cropperJson, width: 300, height: 150, ratioMode: ImageCropRatioMode.Width);
Assert.AreEqual(mediaPath + "?center=0.80827067669172936,0.96&mode=crop&height=150&widthratio=2", urlString);
}
+
+ ///
+ /// Test that if Crop mode is specified as anything other than Crop the image doesn't use the crop
+ ///
+ [Test]
+ public void GetCropUrl_SpecifiedCropModeTest()
+ {
+ var urlString = mediaPath.GetCropUrl(imageCropperValue: cropperJson, width: 300, height: 150, imageCropMode:ImageCropMode.Max);
+ Assert.AreEqual(mediaPath + "?mode=max&width=300&height=150", urlString);
+ }
+
+ ///
+ /// Test for upload property type
+ ///
+ [Test]
+ public void GetCropUrl_UploadTypeTest()
+ {
+ var urlString = mediaPath.GetCropUrl(width: 100, height: 270, imageCropMode: ImageCropMode.Crop, imageCropAnchor: ImageCropAnchor.Center);
+ Assert.AreEqual(mediaPath + "?mode=crop&anchor=center&width=100&height=270", urlString);
+ }
}
}
\ No newline at end of file
diff --git a/src/Umbraco.Web/ImageCropperTemplateExtensions.cs b/src/Umbraco.Web/ImageCropperTemplateExtensions.cs
index 1359517643..8c7b06a3b6 100644
--- a/src/Umbraco.Web/ImageCropperTemplateExtensions.cs
+++ b/src/Umbraco.Web/ImageCropperTemplateExtensions.cs
@@ -215,7 +215,7 @@ namespace Umbraco.Web
{
var imageResizerUrl = new StringBuilder();
- if (string.IsNullOrEmpty(imageCropperValue) == false && imageCropperValue.DetectIsJson())
+ if (string.IsNullOrEmpty(imageCropperValue) == false && imageCropperValue.DetectIsJson() && (imageCropMode == ImageCropMode.Crop || imageCropMode == null))
{
var cropDataSet = imageCropperValue.SerializeToCropDataSet();
if (cropDataSet != null)