Merge pull request #433 from arknu/rte_imagesizing

U4-4729: Make max image dimension in RTE configurable
This commit is contained in:
Shannon Deminick
2014-07-29 10:59:43 -06:00
4 changed files with 22 additions and 9 deletions

View File

@@ -40,7 +40,8 @@ function tinyMceService(dialogService, $log, imageHelper, $http, $timeout, macro
var cfg = {};
cfg.toolbar = ["code", "bold", "italic", "styleselect","alignleft", "aligncenter", "alignright", "bullist","numlist", "outdent", "indent", "link", "image", "umbmediapicker", "umbembeddialog", "umbmacro"];
cfg.stylesheets = [];
cfg.dimensions = {height: 500};
cfg.dimensions = { height: 500 };
cfg.maxImageSize = 500;
return cfg;
},
@@ -120,17 +121,18 @@ function tinyMceService(dialogService, $log, imageHelper, $http, $timeout, macro
var imgElm = editor.dom.get('__mcenew');
var size = editor.dom.getSize(imgElm);
var newSize = imageHelper.scaleToMaxSize(500, size.w, size.h);
if (editor.settings.maxImageSize && editor.settings.maxImageSize != 0) {
var newSize = imageHelper.scaleToMaxSize(editor.settings.maxImageSize, size.w, size.h);
var s = "width: " + newSize.width + "px; height:" + newSize.height + "px;";
editor.dom.setAttrib(imgElm, 'style', s);
editor.dom.setAttrib(imgElm, 'id', null);
var s = "width: " + newSize.width + "px; height:" + newSize.height + "px;";
editor.dom.setAttrib(imgElm, 'style', s);
editor.dom.setAttrib(imgElm, 'id', null);
if(img.url){
var src = img.url + "?width=" + newSize.width + "&height=" + newSize.height;
editor.dom.setAttrib(imgElm, 'data-mce-src', src);
if (img.url) {
var src = img.url + "?width=" + newSize.width + "&height=" + newSize.height;
editor.dom.setAttrib(imgElm, 'data-mce-src', src);
}
}
}, 500);
}
}

View File

@@ -30,6 +30,9 @@ angular.module("umbraco")
var stylesheets = [];
var styleFormats = [];
var await = [];
if (!editorConfig.maxImageSize && editorConfig.maxImageSize != 0) {
editorConfig.maxImageSize = tinyMceService.defaultPrevalues().maxImageSize;
}
//queue file loading
if (typeof tinymce === "undefined") { // Don't reload tinymce if already loaded
@@ -80,6 +83,7 @@ angular.module("umbraco")
statusbar: false,
height: editorConfig.dimensions.height,
width: editorConfig.dimensions.width,
maxImageSize: editorConfig.maxImageSize,
toolbar: toolbar,
content_css: stylesheets.join(','),
relative_urls: false,

View File

@@ -16,6 +16,9 @@ angular.module("umbraco").controller("Umbraco.PrevalueEditors.RteController",
if (!$scope.model.value.toolbar) {
$scope.model.value.toolbar = [];
}
if (!$scope.model.value.maxImageSize && $scope.model.value.maxImageSize != 0) {
$scope.model.value.maxImageSize = cfg.maxImageSize;
}
tinyMceService.configuration().then(function(config){
$scope.tinyMceConfig = config;

View File

@@ -29,4 +29,8 @@
<input type="number" ng-model="model.value.dimensions.width" class="umb-editor-tiny" placeholder="Width" /> &times;
<input type="number" ng-model="model.value.dimensions.height" class="umb-editor-tiny" placeholder="Height" /> Pixels
</umb-control-group>
<umb-control-group label="Maximum size for inserted images" description="0 to disable resizing">
<input type="number" ng-model="model.value.maxImageSize" class="umb-editor-tiny" placeholder="Width/Height" />
</umb-control-group>
</div>