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.UI.Client/src/views/propertyeditors/rte/rte.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/rte.controller.js
index daf058f313..fbcb11a234 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/rte.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/rte.controller.js
@@ -30,7 +30,9 @@ angular.module("umbraco")
var await = [];
//queue file loading
- await.push(assetsService.loadJs("lib/tinymce/tinymce.min.js", $scope));
+ if (typeof tinymce === "undefined") { // Don't reload tinymce if already loaded
+ await.push(assetsService.loadJs("lib/tinymce/tinymce.min.js", $scope));
+ }
//queue rules loading
angular.forEach(editorConfig.stylesheets, function(val, key){
diff --git a/src/Umbraco.Web.UI/web.Template.config b/src/Umbraco.Web.UI/web.Template.config
index ced455efe9..1599ebd7b6 100644
--- a/src/Umbraco.Web.UI/web.Template.config
+++ b/src/Umbraco.Web.UI/web.Template.config
@@ -193,6 +193,8 @@
+
+
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)