From 7d7fcd2093ebf4835c3c1cbd7f19bbc8893f4373 Mon Sep 17 00:00:00 2001 From: Per Ploug Krogslund Date: Thu, 30 Jan 2014 22:28:50 +0100 Subject: [PATCH 1/5] Wip on dropper and gravity editor directives --- .../src/assets/img/mocks/big-image.jpg | Bin 0 -> 316178 bytes .../src/assets/img/mocks/big-thumb.jpg | Bin 0 -> 5093 bytes .../imaging/umbimagecrop.directive.js | 177 +++++++++--------- .../imaging/umbimagegravity.directive.js | 89 +++------ .../imaging/umbimagethumbnail.directive.js | 3 +- .../services/mediahelperService.mocks.js | 4 +- .../src/common/mocks/umbraco.httpbackend.js | 4 +- .../common/services/cropperhelper.service.js | 62 ++++++ src/Umbraco.Web.UI.Client/src/init.js | 4 +- src/Umbraco.Web.UI.Client/src/loader.js | 9 +- .../directives/imaging/umb-image-crop.html | 23 +-- .../directives/imaging/umb-image-gravity.html | 10 +- .../mediapicker/mediapicker.controller.js | 15 +- .../mediapicker/mediapicker.html | 33 ++-- 14 files changed, 219 insertions(+), 214 deletions(-) create mode 100644 src/Umbraco.Web.UI.Client/src/assets/img/mocks/big-image.jpg create mode 100644 src/Umbraco.Web.UI.Client/src/assets/img/mocks/big-thumb.jpg create mode 100644 src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js diff --git a/src/Umbraco.Web.UI.Client/src/assets/img/mocks/big-image.jpg b/src/Umbraco.Web.UI.Client/src/assets/img/mocks/big-image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fd62385a8368cf76c98e0b1692423f91184b1737 GIT binary patch literal 316178 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 z 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 literal 0 HcmV?d00001 diff --git a/src/Umbraco.Web.UI.Client/src/assets/img/mocks/big-thumb.jpg b/src/Umbraco.Web.UI.Client/src/assets/img/mocks/big-thumb.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ab33fb4a1ce9e417ed91be6be2507fee3be9b00d GIT binary patch literal 5093 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 XyJW(M6WSMdOo(G}9{)${<=p=O{2(E` literal 0 HcmV?d00001 diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js index fbe6a0456c..d8c45dca6d 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js @@ -5,21 +5,20 @@ * @function **/ angular.module("umbraco.directives") - .directive('umbImageCrop', function ($timeout, localizationService, $log) { + .directive('umbImageCrop', + function ($timeout, localizationService, cropperHelper, $log) { return { restrict: 'E', replace: true, templateUrl: 'views/directives/imaging/umb-image-crop.html', scope: { src: '=', - width: '=', - height: '=', + width: '@', + height: '@', crop: "=" }, + link: function(scope, element, attrs) { - - scope.scale = 100; - //if image is over this, we re-calculate the editors global ratio //this will not have an effect on the result, since that is returned in percentage scope.maxHeight = 500; @@ -33,15 +32,19 @@ angular.module("umbraco.directives") cropper:{}, viewport:{}, margin: 20, - ratio: 1 + scale: { + min: 0.3, + max: 3, + current: 1 + } }; scope.style = function () { - return { - 'height': (parseInt(scope.height, 10) + 2 * scope.dimensions.margin) + 'px', - 'width': (parseInt(scope.width, 10) + 2 * scope.dimensions.margin) + 'px' - }; - }; + return { + 'height': (parseInt(scope.height, 10) + 2 * scope.dimensions.margin) + 'px', + 'width': (parseInt(scope.width, 10) + 2 * scope.dimensions.margin) + 'px' + }; + }; //elements @@ -52,10 +55,17 @@ angular.module("umbraco.directives") //default constraints for drag n drop var constraints = {left: {max: 20, min: 20}, top: {max: 20, min: 20}, }; - - var setDimensions = function(){ - scope.dimensions.image.width = $image.width(); - scope.dimensions.image.height = $image.height(); + var setDimensions = function(originalImage){ + originalImage.width("auto"); + originalImage.height("auto"); + + scope.dimensions.image.originalWidth = originalImage.width(); + scope.dimensions.image.originalHeight = originalImage.height(); + + scope.dimensions.image.width = originalImage.width(); + scope.dimensions.image.height = originalImage.height(); + scope.dimensions.image.left = originalImage[0].offsetLeft; + scope.dimensions.image.top = originalImage[0].offsetTop; scope.dimensions.viewport.width = $viewport.width(); scope.dimensions.viewport.height = $viewport.height(); @@ -67,36 +77,28 @@ angular.module("umbraco.directives") var setImageSize = function(width, height){ $image.width(width); $image.height(height); + scope.dimensions.image.width = width; scope.dimensions.image.height = height; + scope.dimensions.image.left = $image[0].offsetLeft; + scope.dimensions.image.top = $image[0].offsetTop; }; //when loading an image without any crop info, we center and fit it var fitImage = function(){ fitToViewPort($image); - centerImage($image); + + cropperHelper.centerInsideViewPort($image, $viewport); + syncOverLay(); setConstraints($image); }; - //utill for centering scaled image - var centerImage = function(img) { - var image_width = img.width(), - image_height = img.height(), - mask_width = $viewport.width(), - mask_height = $viewport.height(); - - img.css({ - 'position': 'absolute', - 'left': scope.dimensions.viewport.width / 2 - scope.dimensions.image.width / 2, - 'top': scope.dimensions.viewport.height / 2 - scope.dimensions.image.height / 2 - }); - }; - //utill for scaling image to fit viewport var fitToViewPort = function(img) { + //returns size fitting the cropper - var size = calculateAspectRatioFit( + var size = cropperHelper.calculateAspectRatioFit( scope.dimensions.image.width, scope.dimensions.image.height, scope.dimensions.cropper.width, @@ -106,20 +108,16 @@ angular.module("umbraco.directives") //sets the image size and updates the scope setImageSize(size.width, size.height); - scope.minScale = size.ratio; - scope.maxScale = size.ratio * 3; - scope.currentScale = scope.minScale; - scope.scale = scope.currentScale; + scope.dimensions.scale.min = size.ratio; + scope.dimensions.scale.max = size.ratio * 3; + scope.dimensions.scale.current = size.ratio; }; + var resizeImageToScale = function(img, ratio){ //do stuff - var size = calculateSizeToRatio(scope.dimensions.image.originalWidth, scope.dimensions.image.originalHeight, ratio); - + var size = cropperHelper.calculateSizeToRatio(scope.dimensions.image.originalWidth, scope.dimensions.image.originalHeight, ratio); setImageSize(size.width, size.height); - centerImage(img); - scope.currentScale = scope.scale; - syncOverLay(); }; @@ -135,23 +133,7 @@ angular.module("umbraco.directives") constraints.top.min = 20 + crop_height - h; }; - //utill for getting either min/max aspect ratio to scale image after - var calculateAspectRatioFit = function(srcWidth, srcHeight, maxWidth, maxHeight, maximize) { - var ratio = [maxWidth / srcWidth, maxHeight / srcHeight ]; - - if(maximize){ - ratio = Math.max(ratio[0], ratio[1]); - }else{ - ratio = Math.min(ratio[0], ratio[1]); - } - - return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; - }; - //utill for scaling width / height given a ratio - var calculateSizeToRatio= function(srcWidth, srcHeight, ratio) { - return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; - }; var calculateCropBox = function(){ scope.crop.left = Math.abs($image[0].offsetLeft - scope.dimensions.margin) / scope.dimensions.image.width; @@ -169,9 +151,20 @@ angular.module("umbraco.directives") var cropped_width = scope.dimensions.image.originalWidth - left; var ratio = cropped_width / scope.dimensions.image.originalWidth; - scope.scale = ratio; - resizeImageToScale($image, ratio); + var original = cropperHelper.calculateAspectRatioFit( + scope.dimensions.image.originalWidth, + scope.dimensions.image.originalHeight, + scope.dimensions.cropper.width, + scope.dimensions.cropper.height, + true); + scope.dimensions.scale.current = ratio; + + //min max based on original width/height + scope.dimensions.scale.min = original.ratio; + scope.dimensions.scale.max = 2; + + resizeImageToScale($image, ratio); $image.css({ "top": -top, "left": -left @@ -181,7 +174,6 @@ angular.module("umbraco.directives") }; - var syncOverLay = function(){ $overlay.height($image.height()); $overlay.width($image.width()); @@ -194,6 +186,8 @@ angular.module("umbraco.directives") calculateCropBox(); }; + + //Drag and drop positioning, using jquery ui draggable var onStartDragPosition, top, left; $overlay.draggable({ @@ -201,8 +195,6 @@ angular.module("umbraco.directives") syncOverLay(); }, drag: function(event, ui) { - - if(ui.position.left <= constraints.left.max && ui.position.left >= constraints.left.min){ $image.css({ 'left': ui.position.left @@ -215,50 +207,59 @@ angular.module("umbraco.directives") }); } }, - stop: function() { + stop: function(event, ui) { + + scope.dimensions.image.left = $image[0].offsetLeft; + scope.dimensions.image.top = $image[0].offsetTop; + + syncOverLay(); } }); + var init = function(image){ + scope.loaded = false; + + //set dimensions on image, viewport, cropper etc + setDimensions(image); + + //if we have a crop already position the image + if(scope.crop && scope.crop.top){ + calculatePosition(scope.crop); + }else{ + //if not, reset it and fit the image to the viewport + scope.crop = {}; + fitImage(); + } + + scope.loaded = true; + }; //// INIT ///// $image.load(function(){ $timeout(function(){ - $image.width("auto"); - $image.height("auto"); - - scope.dimensions.image.originalWidth = $image.width(); - scope.dimensions.image.originalHeight = $image.height(); - - setDimensions(); - - if(scope.crop && scope.crop.top){ - calculatePosition(scope.crop); - }else{ - scope.crop = {}; - fitImage(); - } - - scope.loaded = true; + init($image); }); }); /// WATCHERS //// - scope.$watch("scale", function(){ - if(scope.loaded && scope.scale !== scope.currentScale){ - resizeImageToScale($image, scope.scale); - setConstraints($image); - } + scope.$watchCollection('[width, height]', function(newValues, oldValues){ + //we have to reinit the whole thing if + //one of the external params changes + if(newValues !== oldValues){ + setDimensions($image); + } }); - /// WATCHERS //// - scope.$watch("crop", function(newVal, oldVal){ - if(scope.loaded && newVal !== oldVal){ - calculatePosition(scope.crop); + + scope.$watch("dimensions.scale.current", function(){ + if(scope.loaded){ + resizeImageToScale($image, scope.dimensions.scale.current); + setConstraints($image); } }); } diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js index 03f3dd7b7e..c37e6fc319 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js @@ -20,98 +20,57 @@ angular.module("umbraco.directives") }, link: function(scope, element, attrs) { + scope.dimensions = { + width: 0, + height: 0, + left: 0, + top: 0 + }; + //elements var $viewport = element.find(".viewport"); var $image = element.find("img"); var $overlay = element.find(".overlay"); + scope.style = function () { + return { + 'top': scope.dimensions.top + 'px', + 'left': scope.dimensions.left + 'px' + }; + }; var setDimensions = function(){ - scope.imagewidth = $image.width(); - scope.imageheight = $image.height(); - }; + scope.dimensions.width = $image.width(); + scope.dimensions.height = $image.height(); - var setImageSize = function(width, height){ - $image.width(width); - $image.height(height); - - $viewport.width(width); - $viewport.height(height); - }; - - var fitImage = function(){ - fitToViewPort($image); - centerImage($image); - $log.log("centered and fitted"); - }; - - //utill for centering scaled image - var centerImage = function(img) { - img.css({ - 'position': 'absolute', - 'left': scope.width / 2 - scope.imageWidth / 2, - 'top': scope.height / 2 - scope.imageHeight / 2 - }); - }; - - //utill for scaling image to fit viewport - var fitToViewPort = function(img) { - //returns size fitting the cropper - var size = calculateAspectRatioFit( - scope.imageWidth, - scope.imageHeight, - scope.width, - scope.height, - false); - - //sets the image size and updates the scope - setImageSize(size.width, size.height); - }; - - - //utill for getting either min/max aspect ratio to scale image after - var calculateAspectRatioFit = function(srcWidth, srcHeight, maxWidth, maxHeight, maximize) { - var ratio = [maxWidth / srcWidth, maxHeight / srcHeight ]; - - if(maximize){ - ratio = Math.max(ratio[0], ratio[1]); - }else{ - ratio = Math.min(ratio[0], ratio[1]); + if(scope.gravity){ + scope.dimensions.left = scope.gravity.left * scope.dimensions.width -10; + scope.dimensions.top = scope.gravity.top * scope.dimensions.height -10; } - - return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; }; - + var calculateGravity = function(){ - scope.gravity.left = $overlay[0].offsetLeft + 10; - scope.gravity.top = $overlay[0].offsetTop + 10; + scope.dimensions.left = $overlay[0].offsetLeft + 10; + scope.dimensions.top = $overlay[0].offsetTop + 10; + + scope.gravity.left = scope.gravity.left / scope.dimensions.width; + scope.gravity.top = scope.gravity.top / scope.dimensions.height; }; //Drag and drop positioning, using jquery ui draggable - var onStartDragPosition, top, left; $overlay.draggable({ stop: function() { calculateGravity(); } }); - //// INIT ///// $image.load(function(){ - $timeout(function(){ - $image.width("auto"); - $image.height("auto"); - setDimensions(); - fitImage(); - - scope.loaded = true; }); }); - - } }; }); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js index b3ff344224..e8c4afeda0 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js @@ -7,7 +7,8 @@ * Used by editors that require naming an entity. Shows a textbox/headline with a required validator within it's own form. **/ angular.module("umbraco.directives") - .directive('umbImageThumbnail', function ($timeout, localizationService, $log) { + .directive('umbImageThumbnail', + function ($timeout, localizationService, cropperHelper, $log) { return { restrict: 'E', replace: true, diff --git a/src/Umbraco.Web.UI.Client/src/common/mocks/services/mediahelperService.mocks.js b/src/Umbraco.Web.UI.Client/src/common/mocks/services/mediahelperService.mocks.js index 61e80b60c9..78196212ac 100644 --- a/src/Umbraco.Web.UI.Client/src/common/mocks/services/mediahelperService.mocks.js +++ b/src/Umbraco.Web.UI.Client/src/common/mocks/services/mediahelperService.mocks.js @@ -19,7 +19,7 @@ function mediaHelper(umbRequestHelper) { * @param {object} options.imageOnly Optional, if true then will only return a path if the media item is an image */ getMediaPropertyValue: function (options) { - return "assets/img/mocks/image.jpg"; + return "assets/img/mocks/big-image.jpg"; }, /** @@ -35,7 +35,7 @@ function mediaHelper(umbRequestHelper) { * @param {object} options.imageModel The media object to retrieve the image path from */ getImagePropertyValue: function (options) { - return "assets/img/mocks/image.jpg"; + return "assets/img/mocks/big-image.jpg"; }, /** * @ngdoc function diff --git a/src/Umbraco.Web.UI.Client/src/common/mocks/umbraco.httpbackend.js b/src/Umbraco.Web.UI.Client/src/common/mocks/umbraco.httpbackend.js index 2cd9545e6a..372fb69c95 100644 --- a/src/Umbraco.Web.UI.Client/src/common/mocks/umbraco.httpbackend.js +++ b/src/Umbraco.Web.UI.Client/src/common/mocks/umbraco.httpbackend.js @@ -1,7 +1,7 @@ var umbracoAppDev = angular.module('umbraco.httpbackend', ['umbraco', 'ngMockE2E', 'umbraco.mocks']); -function initBackEnd($httpBackend, contentMocks, mediaMocks, treeMocks, userMocks, contentTypeMocks, sectionMocks, entityMocks, dataTypeMocks, dashboardMocks, macroMocks, utilMocks, localizationMocks, prevaluesMocks, imageHelperMocks) { +function initBackEnd($httpBackend, contentMocks, mediaMocks, treeMocks, userMocks, contentTypeMocks, sectionMocks, entityMocks, dataTypeMocks, dashboardMocks, macroMocks, utilMocks, localizationMocks, prevaluesMocks) { console.log("httpBackend inited"); @@ -18,8 +18,6 @@ function initBackEnd($httpBackend, contentMocks, mediaMocks, treeMocks, userMock utilMocks.register(); localizationMocks.register(); prevaluesMocks.register(); - - imageHelperMocks.register(); entityMocks.register(); $httpBackend.whenGET(/^views\//).passThrough(); diff --git a/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js b/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js new file mode 100644 index 0000000000..f6d61d8dd0 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js @@ -0,0 +1,62 @@ +/** +* @ngdoc service +* @name umbraco.services.mediaHelper +* @description A helper object used for dealing with media items +**/ +function cropperHelper(umbRequestHelper) { + var service = { + //utill for getting either min/max aspect ratio to scale image after + calculateAspectRatioFit : function(srcWidth, srcHeight, maxWidth, maxHeight, maximize) { + var ratio = [maxWidth / srcWidth, maxHeight / srcHeight ]; + + if(maximize){ + ratio = Math.max(ratio[0], ratio[1]); + }else{ + ratio = Math.min(ratio[0], ratio[1]); + } + + return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; + }, + + + //utill for scaling width / height given a ratio + calculateSizeToRatio : function(srcWidth, srcHeight, ratio) { + return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; + }, + + + centerInsideViewPort : function(img, viewport){ + var image_width = img.width(), + image_height = img.height(), + mask_width = viewport.width(), + mask_height = viewport.height(), + image_top = img[0].offsetTop, + image_left = $image[0].offsetLeft, + change = true; + + var left = mask_width / 2 - image_width / 2, + top = mask_height / 2 - image_height / 2; + + /*check for overflow + if(image_left > 20 || image_left < mask_width - image_width){ + left = mask_width / 2 - image_width / 2; + change = true; + }*/ + + if(change){ + img.css({ + 'position': 'absolute', + 'left': left, + 'top': top + }); + } + + } + + + }; + + return service; +} + +angular.module('umbraco.services').factory('cropperHelper', cropperHelper); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/init.js b/src/Umbraco.Web.UI.Client/src/init.js index 974cfe97ee..f31e81e5d3 100644 --- a/src/Umbraco.Web.UI.Client/src/init.js +++ b/src/Umbraco.Web.UI.Client/src/init.js @@ -1,6 +1,6 @@ /** Executed when the application starts, binds to events and set global state */ -app.run(['userService', '$log', '$rootScope', '$location', 'navigationService', 'appState', 'editorState', 'fileManager', 'assetsService', 'eventsService', '$cookies', - function (userService, $log, $rootScope, $location, navigationService, appState, editorState, fileManager, assetsService, eventsService, $cookies) { +app.run(['userService', '$log', '$rootScope', '$location', 'navigationService', 'appState', 'editorState', 'fileManager', 'assetsService', 'eventsService', '$cookies', '$templateCache', + function (userService, $log, $rootScope, $location, navigationService, appState, editorState, fileManager, assetsService, eventsService, $cookies, $templateCache) { //This sets the default jquery ajax headers to include our csrf token, we diff --git a/src/Umbraco.Web.UI.Client/src/loader.js b/src/Umbraco.Web.UI.Client/src/loader.js index ffb61665a5..54bf9e0413 100644 --- a/src/Umbraco.Web.UI.Client/src/loader.js +++ b/src/Umbraco.Web.UI.Client/src/loader.js @@ -4,13 +4,8 @@ yepnope({ 'lib/jquery/jquery-2.0.3.min.js', /* the jquery ui elements we need */ - /* NOTE: I've opted not to use the full lib, just the parts we need to save on DL*/ - 'lib/jquery/jquery.ui.core.min.js', - 'lib/jquery/jquery.ui.widget.min.js', - - 'lib/jquery/jquery.ui.mouse.min.js', - 'lib/jquery/jquery.ui.sortable.min.js', - + 'lib/jquery/jquery-ui-1.10.3.custom.min.js', + /* 1.1.5 */ 'lib/angular/1.1.5/angular.min.js', 'lib/angular/1.1.5/angular-cookies.min.js', diff --git a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html index 82f83d56d6..a81493ab77 100644 --- a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html +++ b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html @@ -8,25 +8,8 @@ - -

-		{{dimensions | json}}
-
- -
-		{{box | json}}
-
- - + ng-model="dimensions.scale.current" /> \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html index 198e8d3f98..7f06c27ab4 100644 --- a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html +++ b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html @@ -1,12 +1,16 @@
-
- +
+ -
+
+ + {{gravity | json }} + + {{dimensions | json }}
\ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.controller.js index 7ecf0a4b9a..5a0cdc9fc9 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.controller.js @@ -11,7 +11,7 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl //Data sample var __img = { //image to crop - src: "assets/img/mocks/image.jpg", + src: "assets/img/mocks/big-image.jpg", //global gravity, used if not crop is specified gravity: {left: 0.5, top: 0.4}, @@ -20,8 +20,8 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl thumbnail: { //crop dimensions - width: "30px", - height: "40px", + width: 100, + height: 100, //crops in percentages crop:{ "left": 0.31731772342645215, @@ -33,8 +33,8 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl banner: { - width: "200px", - height: "20px", + width: 340, + height: 90, crop:{ "left": 0.31731772342645215, "top": 0.17420325244997603, @@ -45,8 +45,8 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl highrise: { - width: "20px", - height: "200px" + width: 90, + height: 340 }, } }; @@ -81,7 +81,6 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl $scope.edit = function(image){ $scope.currentImage = image; - $scope.cropper.image = __img; } diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.html index 9e31aadddb..b95b4a6258 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.html +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/mediapicker/mediapicker.html @@ -1,35 +1,38 @@
-
- +
-
+
+ height="200" + width= "380" + src="cropper.image.src" + gravity="cropper.point.gravity" />
  • + ng-click="cropper.crop = undefined; cropper.point = cropper.image" /> + original
  • -
  • - + +
  • + + height="value.height" + width="value.width">
  • @@ -38,7 +41,7 @@
    • - + From 7dbd21a854c8e8d558c7a83a611c119a1a3d26cc Mon Sep 17 00:00:00 2001 From: perploug Date: Fri, 7 Feb 2014 09:15:44 +0100 Subject: [PATCH 2/5] ImageCropper Added as a real property editor + polish Polishing the UI, it can now edit actual image data and store crop points / center point as json, next add configuration service --- src/Umbraco.Core/Constants-PropertyEditors.cs | 2 +- .../imaging/umbimagecrop.directive.js | 241 +++++++++--------- .../imaging/umbimagegravity.directive.js | 32 ++- .../imaging/umbimagethumbnail.directive.js | 64 ++++- .../common/services/cropperhelper.service.js | 120 +++++++-- src/Umbraco.Web.UI.Client/src/less/belle.less | 1 + .../src/less/property-editors.less | 47 +++- .../src/less/tipmenu.less | 15 ++ .../directives/imaging/umb-image-crop.html | 24 +- .../directives/imaging/umb-image-gravity.html | 8 +- .../imaging/umb-image-thumbnail.html | 5 +- .../imagecropper/imagecropper.controller.js | 57 +++++ .../imagecropper/imagecropper.html | 46 ++++ .../ImageCropperPropertyEditor.cs | 15 ++ src/Umbraco.Web/Umbraco.Web.csproj | 1 + 15 files changed, 478 insertions(+), 200 deletions(-) create mode 100644 src/Umbraco.Web.UI.Client/src/less/tipmenu.less create mode 100644 src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.controller.js create mode 100644 src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.html create mode 100644 src/Umbraco.Web/PropertyEditors/ImageCropperPropertyEditor.cs diff --git a/src/Umbraco.Core/Constants-PropertyEditors.cs b/src/Umbraco.Core/Constants-PropertyEditors.cs index c0e2c49b38..08a9fd7849 100644 --- a/src/Umbraco.Core/Constants-PropertyEditors.cs +++ b/src/Umbraco.Core/Constants-PropertyEditors.cs @@ -139,7 +139,7 @@ namespace Umbraco.Core ///// ///// Alias for the Image Cropper datatype. ///// - //public const string ImageCropperAlias = "Umbraco.ImageCropper"; + public const string ImageCropperAlias = "Umbraco.ImageCropper"; /// /// Guid for the Integer datatype. diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js index d8c45dca6d..1a31a2e53f 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagecrop.directive.js @@ -15,7 +15,8 @@ angular.module("umbraco.directives") src: '=', width: '@', height: '@', - crop: "=" + crop: "=", + center: "=", }, link: function(scope, element, attrs) { @@ -31,7 +32,7 @@ angular.module("umbraco.directives") image: {}, cropper:{}, viewport:{}, - margin: 20, + margin: 40, scale: { min: 0.3, max: 3, @@ -39,13 +40,15 @@ angular.module("umbraco.directives") } }; + + //live rendering of viewport and image styles scope.style = function () { return { 'height': (parseInt(scope.height, 10) + 2 * scope.dimensions.margin) + 'px', 'width': (parseInt(scope.width, 10) + 2 * scope.dimensions.margin) + 'px' }; }; - + //elements var $viewport = element.find(".viewport"); @@ -54,18 +57,31 @@ angular.module("umbraco.directives") var $container = element.find(".crop-container"); //default constraints for drag n drop - var constraints = {left: {max: 20, min: 20}, top: {max: 20, min: 20}, }; - var setDimensions = function(originalImage){ + var constraints = {left: {max: scope.dimensions.margin, min: scope.dimensions.margin}, top: {max: scope.dimensions.margin, min: scope.dimensions.margin}, }; + scope.constraints = constraints; + + + //set constaints for cropping drag and drop + var setConstraints = function(){ + constraints.left.min = scope.dimensions.margin + scope.dimensions.cropper.width - scope.dimensions.image.width; + constraints.top.min = scope.dimensions.margin + scope.dimensions.cropper.height - scope.dimensions.image.height; + }; + + + var setDimensions = function(originalImage){ originalImage.width("auto"); originalImage.height("auto"); - scope.dimensions.image.originalWidth = originalImage.width(); - scope.dimensions.image.originalHeight = originalImage.height(); + var image = {}; + image.originalWidth = originalImage.width(); + image.originalHeight = originalImage.height(); - scope.dimensions.image.width = originalImage.width(); - scope.dimensions.image.height = originalImage.height(); - scope.dimensions.image.left = originalImage[0].offsetLeft; - scope.dimensions.image.top = originalImage[0].offsetTop; + image.width = image.originalWidth; + image.height = image.originalHeight; + image.left = originalImage[0].offsetLeft; + image.top = originalImage[0].offsetTop; + + scope.dimensions.image = image; scope.dimensions.viewport.width = $viewport.width(); scope.dimensions.viewport.height = $viewport.height(); @@ -74,28 +90,9 @@ angular.module("umbraco.directives") scope.dimensions.cropper.height = scope.dimensions.viewport.height - 2 * scope.dimensions.margin; }; - var setImageSize = function(width, height){ - $image.width(width); - $image.height(height); - - scope.dimensions.image.width = width; - scope.dimensions.image.height = height; - scope.dimensions.image.left = $image[0].offsetLeft; - scope.dimensions.image.top = $image[0].offsetTop; - }; //when loading an image without any crop info, we center and fit it - var fitImage = function(){ - fitToViewPort($image); - - cropperHelper.centerInsideViewPort($image, $viewport); - - syncOverLay(); - setConstraints($image); - }; - - //utill for scaling image to fit viewport - var fitToViewPort = function(img) { + var resizeImageToEditor = function(){ //returns size fitting the cropper var size = cropperHelper.calculateAspectRatioFit( @@ -106,145 +103,128 @@ angular.module("umbraco.directives") true); //sets the image size and updates the scope - setImageSize(size.width, size.height); + scope.dimensions.image.width = size.width; + scope.dimensions.image.height = size.height; + //calculate the best suited ratios scope.dimensions.scale.min = size.ratio; - scope.dimensions.scale.max = size.ratio * 3; + scope.dimensions.scale.max = 2; scope.dimensions.scale.current = size.ratio; + + //center the image + var position = cropperHelper.centerInsideViewPort(scope.dimensions.image, scope.dimensions.cropper); + scope.dimensions.top = position.top; + scope.dimensions.left = position.left; + + setConstraints(); }; - - var resizeImageToScale = function(img, ratio){ + //resize to a given ratio + var resizeImageToScale = function(ratio){ //do stuff var size = cropperHelper.calculateSizeToRatio(scope.dimensions.image.originalWidth, scope.dimensions.image.originalHeight, ratio); - setImageSize(size.width, size.height); - syncOverLay(); + scope.dimensions.image.width = size.width; + scope.dimensions.image.height = size.height; + + setConstraints(); + validatePosition(scope.dimensions.image.left, scope.dimensions.image.top); }; - //set constaints for cropping drag and drop - var setConstraints = function(img){ - //do stuff - var w = img.width(), - h = img.height(), - crop_width = $viewport.width() - 2 * 20, - crop_height = $viewport.height() - 2 * 20; + //resize the image to a predefined crop coordinate + var resizeImageToCrop = function(){ + scope.dimensions.image = cropperHelper.convertToStyle( + scope.crop, + {width: scope.dimensions.image.originalWidth, height: scope.dimensions.image.originalHeight}, + scope.dimensions.cropper, + scope.dimensions.margin); - constraints.left.min = 20 + crop_width - w; - constraints.top.min = 20 + crop_height - h; - }; - - - - var calculateCropBox = function(){ - scope.crop.left = Math.abs($image[0].offsetLeft - scope.dimensions.margin) / scope.dimensions.image.width; - scope.crop.top = Math.abs($image[0].offsetTop - scope.dimensions.margin) / scope.dimensions.image.height; - - scope.crop.right = 1 - Math.abs(scope.dimensions.cropper.width - (scope.dimensions.image.width - scope.crop.left)) / scope.dimensions.image.width; - scope.crop.bottom = 1 - Math.abs(scope.dimensions.cropper.height - (scope.dimensions.image.height - scope.crop.top)) / scope.dimensions.image.height; - }; - - var calculatePosition = function(crop){ - - var left = (crop.left * scope.dimensions.image.originalWidth); - var top = (crop.top * scope.dimensions.image.originalHeight); - - var cropped_width = scope.dimensions.image.originalWidth - left; - var ratio = cropped_width / scope.dimensions.image.originalWidth; - - var original = cropperHelper.calculateAspectRatioFit( + var ratioCalculation = cropperHelper.calculateAspectRatioFit( scope.dimensions.image.originalWidth, scope.dimensions.image.originalHeight, scope.dimensions.cropper.width, scope.dimensions.cropper.height, true); - scope.dimensions.scale.current = ratio; + scope.dimensions.scale.current = scope.dimensions.image.ratio; //min max based on original width/height - scope.dimensions.scale.min = original.ratio; + scope.dimensions.scale.min = ratioCalculation.ratio; scope.dimensions.scale.max = 2; - - resizeImageToScale($image, ratio); - $image.css({ - "top": -top, - "left": -left - }); - - syncOverLay(); }; - var syncOverLay = function(){ - $overlay.height($image.height()); - $overlay.width($image.width()); - $overlay.css({ - "top": $image[0].offsetTop, - "left": $image[0].offsetLeft - }); + var validatePosition = function(left, top){ + if(left > constraints.left.max) + { + left = constraints.left.max; + } - calculateCropBox(); + if(left <= constraints.left.min){ + left = constraints.left.min; + } + + if(top > constraints.top.max) + { + top = constraints.top.max; + } + if(top <= constraints.top.min){ + top = constraints.top.min; + } + + scope.dimensions.image.left = left; + scope.dimensions.image.top = top; + }; + + + + + + + + //sets scope.crop to the recalculated % based crop + var calculateCropBox = function(){ + scope.crop = cropperHelper.pixelsToCoordinates(scope.dimensions.image, scope.dimensions.cropper.width, scope.dimensions.cropper.height, scope.dimensions.margin); }; - - //Drag and drop positioning, using jquery ui draggable var onStartDragPosition, top, left; $overlay.draggable({ - start: function(event, ui) { - syncOverLay(); - }, drag: function(event, ui) { - if(ui.position.left <= constraints.left.max && ui.position.left >= constraints.left.min){ - $image.css({ - 'left': ui.position.left - }); - } - - if(ui.position.top <= constraints.top.max && ui.position.top >= constraints.top.min){ - $image.css({ - 'top': ui.position.top - }); - } + scope.$apply(function(){ + validatePosition(ui.position.left, ui.position.top); + }); }, - stop: function(event, ui) { - - scope.dimensions.image.left = $image[0].offsetLeft; - scope.dimensions.image.top = $image[0].offsetTop; - - - syncOverLay(); + stop: function(event, ui){ + scope.$apply(function(){ + calculateCropBox(); + scope.dimensions.image.rnd = Math.random(); + }); } }); - - - var init = function(image){ + + var init = function(image){ scope.loaded = false; //set dimensions on image, viewport, cropper etc setDimensions(image); //if we have a crop already position the image - if(scope.crop && scope.crop.top){ - calculatePosition(scope.crop); + if(scope.crop){ + resizeImageToCrop(); }else{ - //if not, reset it and fit the image to the viewport - scope.crop = {}; - fitImage(); + resizeImageToEditor(); } + //sets constaints for the cropper + setConstraints(); + + scope.loaded = true; }; - //// INIT ///// - $image.load(function(){ - $timeout(function(){ - init($image); - }); - }); - /// WATCHERS //// scope.$watchCollection('[width, height]', function(newValues, oldValues){ @@ -252,16 +232,25 @@ angular.module("umbraco.directives") //one of the external params changes if(newValues !== oldValues){ setDimensions($image); + setConstraints(); } }); - + //happens when we change the scale scope.$watch("dimensions.scale.current", function(){ if(scope.loaded){ - resizeImageToScale($image, scope.dimensions.scale.current); - setConstraints($image); + resizeImageToScale(scope.dimensions.scale.current); + calculateCropBox(); } }); + + + //// INIT ///// + $image.load(function(){ + $timeout(function(){ + init($image); + }); + }); } }; }); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js index c37e6fc319..7a311e5a0e 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagegravity.directive.js @@ -14,12 +14,11 @@ angular.module("umbraco.directives") templateUrl: 'views/directives/imaging/umb-image-gravity.html', scope: { src: '=', - width: "=", - height: "=", - gravity: "=" + center: "=" }, link: function(scope, element, attrs) { + //Internal values for keeping track of the dot and the size of the editor scope.dimensions = { width: 0, height: 0, @@ -33,6 +32,10 @@ angular.module("umbraco.directives") var $overlay = element.find(".overlay"); scope.style = function () { + if(scope.dimensions.width <= 0){ + setDimensions(); + } + return { 'top': scope.dimensions.top + 'px', 'left': scope.dimensions.left + 'px' @@ -43,25 +46,28 @@ angular.module("umbraco.directives") scope.dimensions.width = $image.width(); scope.dimensions.height = $image.height(); - if(scope.gravity){ - scope.dimensions.left = scope.gravity.left * scope.dimensions.width -10; - scope.dimensions.top = scope.gravity.top * scope.dimensions.height -10; + if(scope.center){ + scope.dimensions.left = scope.center.left * scope.dimensions.width -10; + scope.dimensions.top = scope.center.top * scope.dimensions.height -10; } - }; + }; var calculateGravity = function(){ - scope.dimensions.left = $overlay[0].offsetLeft + 10; - scope.dimensions.top = $overlay[0].offsetTop + 10; + scope.dimensions.left = $overlay[0].offsetLeft; + scope.dimensions.top = $overlay[0].offsetTop; - scope.gravity.left = scope.gravity.left / scope.dimensions.width; - scope.gravity.top = scope.gravity.top / scope.dimensions.height; + scope.center.left = (scope.dimensions.left+10) / scope.dimensions.width; + scope.center.top = (scope.dimensions.top+10) / scope.dimensions.height; }; - //Drag and drop positioning, using jquery ui draggable + //TODO ensure that the point doesnt go outside the box $overlay.draggable({ + containment: "parent", stop: function() { - calculateGravity(); + scope.$apply(function(){ + calculateGravity(); + }); } }); diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js index e8c4afeda0..e748827fb7 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/imaging/umbimagethumbnail.directive.js @@ -16,17 +16,69 @@ angular.module("umbraco.directives") scope: { src: '=', - width: '=', - height: '=', - gravity: "=", + width: '@', + height: '@', + center: "=", crop: "=" }, link: function(scope, element, attrs) { - scope.marginLeft = 0-Math.abs( scope.width * scope.gravity.left); - scope.marginTop = 0-Math.abs( scope.width * scope.gravity.top); - + //// INIT ///// + var $image = element.find("img"); + $image.load(function(){ + $timeout(function(){ + $image.width("auto"); + $image.height("auto"); + + scope.image = {}; + scope.image.width = $image[0].width; + scope.image.height = $image[0].height; + + setPreviewStyle(); + }); + }); + + /// WATCHERS //// + scope.$watchCollection('[crop, center]', function(newValues, oldValues){ + //we have to reinit the whole thing if + //one of the external params changes + setPreviewStyle(); + }); + + scope.$watch("center", function(){ + setPreviewStyle(); + }, true); + function setPreviewStyle(){ + if(scope.crop && scope.image){ + scope.preview = cropperHelper.convertToStyle( + scope.crop, + scope.image, + {width: scope.width, height: scope.height}, + 0); + }else if(scope.image){ + + //returns size fitting the cropper + var p = cropperHelper.calculateAspectRatioFit( + scope.image.width, + scope.image.height, + scope.width, + scope.height, + true); + + + if(scope.center){ + var xy = cropperHelper.alignToCoordinates(p, scope.center, {width: scope.width, height: scope.height}); + p.top = xy.top; + p.left = xy.left; + }else{ + + } + + p.position = "absolute"; + scope.preview = p; + } + } } }; }); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js b/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js index f6d61d8dd0..15868c0010 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/cropperhelper.service.js @@ -18,42 +18,110 @@ function cropperHelper(umbRequestHelper) { return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; }, - //utill for scaling width / height given a ratio calculateSizeToRatio : function(srcWidth, srcHeight, ratio) { return { width:srcWidth*ratio, height:srcHeight*ratio, ratio: ratio}; }, + //returns a ng-style object with top,left,width,height pixel measurements + //expects {left,right,top,bottom} - {width,height}, {width,height}, int + //offset is just to push the image position a number of pixels from top,left + convertToStyle : function(coordinates, originalSize, viewPort, offset){ + + var coordinates_px = service.coordinatesToPixels(coordinates, originalSize, offset); + var _offset = offset || 0; + + var x = coordinates.x1 + Math.abs(coordinates.x2); + var left_of_x = originalSize.width - (originalSize.width * x); + var ratio = viewPort.width / left_of_x; + + var style = { + position: "absolute", + top: -(coordinates_px.y1*ratio)+ _offset, + left: -(coordinates_px.x1* ratio)+ _offset, + width: Math.floor(originalSize.width * ratio), + height: Math.floor(originalSize.height * ratio), + originalWidth: originalSize.width, + originalHeight: originalSize.height, + ratio: ratio + }; + + return style; + }, + + //returns a ng-style object with top,left,width,height pixel measurements + //expects {left,right,top,bottom} - {width,height}, {width,height}, int + //offset is just to push the image position a number of pixels from top,left + coordinatesToPixels : function(coordinates, originalSize, offset){ + + var coordinates_px = { + x1: Math.floor(coordinates.x1 * originalSize.width), + y1: Math.floor(coordinates.y1 * originalSize.height), + x2: Math.floor(coordinates.x2 * originalSize.width), + y2: Math.floor(coordinates.y2 * originalSize.height) + }; + + return coordinates_px; + }, + + pixelsToCoordinates : function(image, width, height, offset){ + + var x1_px = Math.abs(image.left-offset); + var y1_px = Math.abs(image.top-offset); + + var x2_px = (x1_px + width) - image.width; + var y2_px = (y1_px + height) - image.height; + + //crop coordinates in % + var crop = {}; + crop.x1 = x1_px / image.width; + crop.y1 = y1_px / image.height; + crop.x2 = x2_px / image.width; + crop.y2 = y2_px / image.height; + + return crop; + }, centerInsideViewPort : function(img, viewport){ - var image_width = img.width(), - image_height = img.height(), - mask_width = viewport.width(), - mask_height = viewport.height(), - image_top = img[0].offsetTop, - image_left = $image[0].offsetLeft, - change = true; - - var left = mask_width / 2 - image_width / 2, - top = mask_height / 2 - image_height / 2; - - /*check for overflow - if(image_left > 20 || image_left < mask_width - image_width){ - left = mask_width / 2 - image_width / 2; - change = true; - }*/ + var left = viewport.width/ 2 - img.width / 2, + top = viewport.height / 2 - img.height / 2; - if(change){ - img.css({ - 'position': 'absolute', - 'left': left, - 'top': top - }); + return {left: left, top: top}; + }, + + alignToCoordinates : function(image, center, viewport){ + + var min_left = (image.width) - (viewport.width); + var min_top = (image.height) - (viewport.height); + + var c_top = -(center.top * image.height) + (viewport.height / 2); + var c_left = -(center.left * image.width) + (viewport.width / 2); + + if(c_top < -min_top){ + c_top = -min_top; } - + if(c_top > 0){ + c_top = 0; + } + if(c_left < -min_left){ + c_left = -min_left; + } + if(c_left > 0){ + c_left = 0; + } + return {left: c_left, top: c_top}; + }, + + + syncElements : function(source, target){ + target.height(source.height()); + target.width(source.width()); + + target.css({ + "top": source[0].offsetTop, + "left": source[0].offsetLeft + }); } - - }; return service; diff --git a/src/Umbraco.Web.UI.Client/src/less/belle.less b/src/Umbraco.Web.UI.Client/src/less/belle.less index 30a89fe63d..acb14f6a91 100644 --- a/src/Umbraco.Web.UI.Client/src/less/belle.less +++ b/src/Umbraco.Web.UI.Client/src/less/belle.less @@ -48,6 +48,7 @@ @import "../../lib/bootstrap/less/modals.less"; @import "../../lib/bootstrap/less/tooltip.less"; @import "../../lib/bootstrap/less/popovers.less"; +@import "tipmenu.less"; // Components: Misc @import "../../lib/bootstrap/less/thumbnails.less"; diff --git a/src/Umbraco.Web.UI.Client/src/less/property-editors.less b/src/Umbraco.Web.UI.Client/src/less/property-editors.less index fd37de89b8..17a0116b00 100644 --- a/src/Umbraco.Web.UI.Client/src/less/property-editors.less +++ b/src/Umbraco.Web.UI.Client/src/less/property-editors.less @@ -130,6 +130,8 @@ ul.color-picker li a { text-decoration: none; } + + .umb-thumbnails{ position: relative; } @@ -194,13 +196,17 @@ ul.color-picker li a { // Cropper // ------------------------------------------------- +.umb-cropper{ + position: relative; + padding-bottom: 30px; +} + .umb-cropper img, .umb-cropper-gravity img{ position: absolute; top: 0; left: 0; } - .umb-cropper .overlay, .umb-cropper-gravity .overlay { top: 0; left: 0; @@ -208,13 +214,19 @@ ul.color-picker li a { z-index: 6001; } -.umb-cropper .viewport, .umb-cropper-gravity .viewport { - overflow: hidden; - position: relative; - border:1px solid @grayLight; - width: 600px; - height: 480px; +.umb-cropper .viewport{ + overflow: hidden; + position: relative; + border: 1px solid @grayLight; } + +.umb-cropper-gravity .viewport{ + overflow: hidden; + position: relative; + width: 400px; + height: 300px +} + .umb-cropper .viewport:after { content: ""; @@ -227,9 +239,9 @@ ul.color-picker li a { -moz-opacity: .75; opacity: .75; filter: alpha(opacity=7); - -webkit-box-shadow: inset 0 0 0 20px white,inset 0 0 0 21px rgba(0,0,0,.1),inset 0 0 20px 21px rgba(0,0,0,.2); - -moz-box-shadow: inset 0 0 0 20px white,inset 0 0 0 21px rgba(0,0,0,.1),inset 0 0 20px 21px rgba(0,0,0,.2); - box-shadow: inset 0 0 0 20px white,inset 0 0 0 21px rgba(0,0,0,.1),inset 0 0 20px 21px rgba(0,0,0,.2); + -webkit-box-shadow: inset 0 0 0 40px white,inset 0 0 0 41px rgba(0,0,0,.1),inset 0 0 40px 41px rgba(0,0,0,.2); + -moz-box-shadow: inset 0 0 0 40px white,inset 0 0 0 41px rgba(0,0,0,.1),inset 0 0 40px 41px rgba(0,0,0,.2); + box-shadow: inset 0 0 0 40px white,inset 0 0 0 41px rgba(0,0,0,.1),inset 0 0 40px 41px rgba(0,0,0,.2); } .umb-cropper-gravity .overlay{ @@ -240,12 +252,27 @@ ul.color-picker li a { opacity: 0.6; background: white; } + .umb-cropper-gravity .overlay i{ font-size: 26px; line-height: 26px; opacity: 0.8 !important; } +.umb-cropper .crop-container{ + text-align: center; +} + +.umb-cropper .crop-slider{ + vertical-align: middle; + width: 250px; + padding-top: 12px; +} + +.umb-cropper .crop-slider i{color: @gray;} +.umb-cropper .crop-slider input{ + margin-top: 7px; +} // diff --git a/src/Umbraco.Web.UI.Client/src/less/tipmenu.less b/src/Umbraco.Web.UI.Client/src/less/tipmenu.less new file mode 100644 index 0000000000..c1c5059319 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/less/tipmenu.less @@ -0,0 +1,15 @@ +.tipmenu .tooltip{ + position:absolute; + left:0; + right:0; + margin-left:auto; + margin-right:auto; +} + +.tipmenu:hover .tooltip{ + opacity: 1; +} + +.tipmenu:hover .tooltip a{ + color: white; +} \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html index a81493ab77..953627637f 100644 --- a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html +++ b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-crop.html @@ -1,15 +1,21 @@ -
      +
      +
      - -
      + +
      - +
      + + + + +
      \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html index 7f06c27ab4..cdceab1335 100644 --- a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html +++ b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-gravity.html @@ -1,16 +1,12 @@
      - +
      +
      - - {{gravity | json }} - - {{dimensions | json }} -
      \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-thumbnail.html b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-thumbnail.html index fe7e299648..765787b48e 100644 --- a/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-thumbnail.html +++ b/src/Umbraco.Web.UI.Client/src/views/directives/imaging/umb-image-thumbnail.html @@ -1,5 +1,4 @@
      - + ng-style="{height: height, width: width, overflow: 'hidden', position: 'relative'}"> +
      \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.controller.js new file mode 100644 index 0000000000..68b99efd33 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.controller.js @@ -0,0 +1,57 @@ +//this controller simply tells the dialogs service to open a mediaPicker window +//with a specified callback, this callback will receive an object with a selection on it +angular.module('umbraco').controller("Umbraco.PropertyEditors.ImageCropperController", + function($rootScope, $scope, mediaHelper, $timeout, editorState) { + + //check the pre-values for multi-picker + var multiPicker = $scope.model.config.multiPicker !== '0' ? true : false; + + //used to reference the part of the data we will either crop or "point" + $scope.currentCrop = undefined; + $scope.currentPoint = undefined; + + var imgPath = mediaHelper.getImagePropertyValue({imageModel: editorState.current}); + + $scope.crop = function(crop){ + $scope.currentCrop = crop; + $scope.currentPoint = undefined; + }; + + $scope.done = function(){ + $scope.currentCrop = undefined; + $scope.currentPoint = undefined; + }; + + + //Data sample + if(!$scope.model.value){ + $scope.model.value = { + //image to crops + src: imgPath, + + //global intrestpoint, used if no crop is specified + center: {left: 0.5, top: 0.4}, + crops:{ + thumbnail: + { + //crop dimensions + width: 100, + height: 100, + + //crops in percentages + crop:{ + "x1": 0.31731772342645215, + "y1": 0.17420325244997603, + "x2": -0.36246473116627076, + "y2": -0.30226197981593617 + } + }, + highrise: + { + width: 90, + height: 340 + } + } + }; + } +}); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.html new file mode 100644 index 0000000000..6081e9fb6e --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/imagecropper/imagecropper.html @@ -0,0 +1,46 @@ +
      + +
      +
      +
      +
      + +
      + + Done +
      + +
      + +
      +
      + + +
      +
      \ No newline at end of file diff --git a/src/Umbraco.Web/PropertyEditors/ImageCropperPropertyEditor.cs b/src/Umbraco.Web/PropertyEditors/ImageCropperPropertyEditor.cs new file mode 100644 index 0000000000..4598f49d1f --- /dev/null +++ b/src/Umbraco.Web/PropertyEditors/ImageCropperPropertyEditor.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Umbraco.Core; +using Umbraco.Core.PropertyEditors; + +namespace Umbraco.Web.PropertyEditors +{ + [PropertyEditor(Constants.PropertyEditors.ImageCropperAlias, "Image Cropper", "imagecropper", ValueType = "JSON", HideLabel = false)] + public class ImageCropperPropertyEditor : PropertyEditor + { + } +} diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index ce74fb02a8..fff22e99dc 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -342,6 +342,7 @@ + From cec8001c38e314496dcce76e4fb1640067de1794 Mon Sep 17 00:00:00 2001 From: perploug Date: Fri, 7 Feb 2014 09:16:05 +0100 Subject: [PATCH 3/5] Fixes issue with MediaHelper and complex property values --- .../src/common/services/mediahelper.service.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/services/mediahelper.service.js b/src/Umbraco.Web.UI.Client/src/common/services/mediahelper.service.js index aa253a9275..6b80f6580d 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/mediahelper.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/mediahelper.service.js @@ -41,7 +41,7 @@ function mediaHelper(umbRequestHelper) { //this performs a simple check to see if we have a media file as value //it doesnt catch everything, but better then nothing - if (item.value.indexOf(mediaRoot) === 0) { + if (angular.isString(item.value) && item.value.indexOf(mediaRoot) === 0) { return true; } From 2850c3c3de1676f9513f0d03f3910b641a42bb13 Mon Sep 17 00:00:00 2001 From: perploug Date: Fri, 7 Feb 2014 15:45:52 +0100 Subject: [PATCH 4/5] Improved caching in debug mode by adding global yepnope filter --- .../src/common/services/assets.service.js | 47 +++++++++--- src/Umbraco.Web.UI.Client/src/loader.js | 13 ++++ .../Properties/Settings.Designer.cs | 11 ++- .../Properties/Settings.settings | 8 +- .../umbraco/Views/Default.cshtml | 7 +- src/Umbraco.Web/Editors/SectionController.cs | 4 +- .../UI/JavaScript/JsInitialization.cs | 7 ++ src/Umbraco.Web/UI/JavaScript/Main.js | 1 + .../UI/JavaScript/Resources.Designer.cs | 73 ++++++++++++------- src/Umbraco.Web/UI/JavaScript/Resources.resx | 11 +++ src/Umbraco.Web/Umbraco.Web.csproj | 1 + 11 files changed, 141 insertions(+), 42 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/services/assets.service.js b/src/Umbraco.Web.UI.Client/src/common/services/assets.service.js index e3f86a4b14..4da21ac281 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/assets.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/assets.service.js @@ -90,17 +90,21 @@ angular.module('umbraco.services') var t = timeout || 5000; var a = attributes || undefined; - yepnope.injectCss(path, function () { - - if (!scope) { - deferred.resolve(true); - }else{ - angularHelper.safeApply(scope, function () { - deferred.resolve(true); - }); - } - - },a,t); + yepnope({ + forceCSS: true, + load: path, + timeout: t, + attrs: a, + callback: function (url, result, key) { + if (!scope) { + deferred.resolve(true); + }else{ + angularHelper.safeApply(scope, function () { + deferred.resolve(true); + }); + } + } + }); return deferred.promise; }, @@ -124,6 +128,26 @@ angular.module('umbraco.services') var t = timeout || 5000; var a = attributes || undefined; + + yepnope({ + forceJS: true, + load: path, + timeout: t, + attrs: a, + callback: function (url, result, key) { + + if (!scope) { + deferred.resolve(true); + }else{ + angularHelper.safeApply(scope, function () { + deferred.resolve(true); + }); + } + } + }); + + +/* yepnope.injectJs(path, function () { if (!scope) { @@ -135,6 +159,7 @@ angular.module('umbraco.services') } },a,t); +*/ return deferred.promise; }, diff --git a/src/Umbraco.Web.UI.Client/src/loader.js b/src/Umbraco.Web.UI.Client/src/loader.js index 54bf9e0413..9695ae0b59 100644 --- a/src/Umbraco.Web.UI.Client/src/loader.js +++ b/src/Umbraco.Web.UI.Client/src/loader.js @@ -1,3 +1,16 @@ +//global no-cache filter, this is enabled when we're in debug mode +//in live mode we use client dependency and don't turn this thing on +yepnope.addFilter(function (resourceObj) { + var url = resourceObj.url; + if(url.indexOf("lib/") === 0 || url.indexOf("js/umbraco.") === 0){ + return resourceObj; + } + + resourceObj.url = resourceObj.url + "?umb__rnd=" + (new Date).getTime(); + return resourceObj; +}); + + yepnope({ load: [ diff --git a/src/Umbraco.Web.UI/Properties/Settings.Designer.cs b/src/Umbraco.Web.UI/Properties/Settings.Designer.cs index 5fd974b641..962354c575 100644 --- a/src/Umbraco.Web.UI/Properties/Settings.Designer.cs +++ b/src/Umbraco.Web.UI/Properties/Settings.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.34003 +// Runtime Version:4.0.30319.18408 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -22,5 +22,14 @@ namespace Umbraco.Web.UI.Properties { return defaultInstance; } } + + [global::System.Configuration.ApplicationScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("http://our.umbraco.org/umbraco/webservices/api/repository.asmx")] + public string Umbraco_Web_UI_org_umbraco_our_Repository { + get { + return ((string)(this["Umbraco_Web_UI_org_umbraco_our_Repository"])); + } + } } } diff --git a/src/Umbraco.Web.UI/Properties/Settings.settings b/src/Umbraco.Web.UI/Properties/Settings.settings index 2bd17f050c..5df40e9fea 100644 --- a/src/Umbraco.Web.UI/Properties/Settings.settings +++ b/src/Umbraco.Web.UI/Properties/Settings.settings @@ -1,5 +1,9 @@  - + - + + + http://our.umbraco.org/umbraco/webservices/api/repository.asmx + + \ No newline at end of file diff --git a/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml b/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml index 48925499d1..d7ce3ddb63 100644 --- a/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml +++ b/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml @@ -8,6 +8,11 @@ @inherits System.Web.Mvc.WebViewPage @{ Layout = null; + + var applicationJs = Url.Action("Application", "BackOffice"); + if (GlobalSettings.DebugMode) { + applicationJs = applicationJs + "?umb__rnd=" + System.DateTime.Now.Ticks; + } } @@ -56,7 +61,7 @@ @*And finally we can load in our angular app*@ - + diff --git a/src/Umbraco.Web/Editors/SectionController.cs b/src/Umbraco.Web/Editors/SectionController.cs index f44be31eb1..a4bb0d9384 100644 --- a/src/Umbraco.Web/Editors/SectionController.cs +++ b/src/Umbraco.Web/Editors/SectionController.cs @@ -16,8 +16,8 @@ namespace Umbraco.Web.Editors { public IEnumerable
      GetSections() { - return Services.SectionService.GetAllowedSections(UmbracoUser.Id) - .Select(Mapper.Map); + var sections = Services.SectionService.GetAllowedSections(UmbracoUser.Id); + return sections.Select(Mapper.Map); } } } \ No newline at end of file diff --git a/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs b/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs index 51c780cfc2..4ba41d931a 100644 --- a/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs +++ b/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs @@ -41,8 +41,15 @@ namespace Umbraco.Web.UI.JavaScript public string GetJavascriptInitialization(HttpContextBase httpContext, JArray umbracoInit, JArray additionalJsFiles = null) { var result = GetJavascriptInitializationArray(httpContext, umbracoInit, additionalJsFiles); + var noCache = ""; + + if (httpContext.IsDebuggingEnabled) + { + noCache = Resources.JsNoCache; + } return ParseMain( + noCache, result.ToString(), IOHelper.ResolveUrl(SystemDirectories.Umbraco)); } diff --git a/src/Umbraco.Web/UI/JavaScript/Main.js b/src/Umbraco.Web/UI/JavaScript/Main.js index c346fedb51..06d5cb79e8 100644 --- a/src/Umbraco.Web/UI/JavaScript/Main.js +++ b/src/Umbraco.Web/UI/JavaScript/Main.js @@ -1,3 +1,4 @@ +"##JsNoCache##" yepnope({ load: [ 'lib/jquery/jquery-2.0.3.min.js', diff --git a/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs b/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs index e10fc651a0..8ed5d7332c 100644 --- a/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs +++ b/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.18046 +// Runtime Version:4.0.30319.18408 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -62,23 +62,23 @@ namespace Umbraco.Web.UI.JavaScript { /// /// Looks up a localized string similar to [ - /// 'lib/jquery/jquery-1.8.2.min.js', - /// 'lib/jquery/jquery.cookie.js', - /// 'lib/angular/angular.min.js', - /// 'lib/bootstrap/js/bootstrap.js', - /// 'lib/underscore/underscore.js', - /// 'lib/umbraco/Extensions.js', + /// 'lib/jquery/jquery-ui-1.10.3.custom.min.js', /// - /// 'js/app.js', + /// /* + /// 'lib/jquery/jquery-ui-1.10.3.custom.min.js', + /// 'lib/jquery/jquery.ui.core.min.js', + /// 'lib/jquery/jquery.ui.widget.min.js', + /// 'lib/jquery/jquery.ui.mouse.min.js', + /// 'lib/jquery/jquery.ui.sortable.min.js', + /// */ /// - /// 'js/umbraco.resources.js', - /// 'js/umbraco.directives.js', - /// 'js/umbraco.filters.js', - /// 'js/umbraco.services.js', - /// 'js/umbraco.security.js', - /// 'js/umbraco.controllers.js', - /// 'js/routes.js' - ///]. + /// 'lib/angular/1.1.5/angular-cookies.min.js', + /// 'lib/angular/1.1.5/angular-mobile.js', + /// 'lib/angular/1.1.5/angular-sanitize.min.js', + /// + /// 'lib/angular/angular-ui-sortable.js', + /// + /// 'lib/jquery/jquery.u [rest of string was truncated]";. /// internal static string JsInitialize { get { @@ -87,18 +87,41 @@ namespace Umbraco.Web.UI.JavaScript { } /// - /// Looks up a localized string similar to yepnope({ - /// - /// load: "##JsInitialize##", - /// - /// complete: function () { - /// jQuery(document).ready(function () { - /// angular.bootstrap(document, ['umbraco']); - /// }); - /// + /// Looks up a localized string similar to yepnope.addFilter(function (resourceObj) { + /// var url = resourceObj.url; + /// if(url.indexOf("lib/") === 0 || url.indexOf("js/umbraco.") === 0){ + /// return resourceObj; /// } + /// + /// resourceObj.url = resourceObj.url + "?umb__rnd=" + (new Date).getTime(); + /// return resourceObj; ///});. /// + internal static string JsNoCache { + get { + return ResourceManager.GetString("JsNoCache", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to "##JsNoCache##" + ///yepnope({ + /// load: [ + /// 'lib/jquery/jquery-2.0.3.min.js', + /// 'lib/angular/1.1.5/angular.min.js', + /// 'lib/underscore/underscore.js', + /// ], + /// complete: function () { + /// yepnope({ + /// load: "##JsInitialize##", + /// complete: function () { + /// + /// //we need to set the legacy UmbClientMgr path + /// UmbClientMgr.setUmbracoPath('"##UmbracoPath##"'); + /// + /// jQuery(document).ready(function () { + /// [rest of string was truncated]";. + /// internal static string Main { get { return ResourceManager.GetString("Main", resourceCulture); diff --git a/src/Umbraco.Web/UI/JavaScript/Resources.resx b/src/Umbraco.Web/UI/JavaScript/Resources.resx index a3e54b6805..40f04a0f90 100644 --- a/src/Umbraco.Web/UI/JavaScript/Resources.resx +++ b/src/Umbraco.Web/UI/JavaScript/Resources.resx @@ -121,6 +121,17 @@ jsinitialize.js;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + + yepnope.addFilter(function (resourceObj) { + var url = resourceObj.url; + if(url.indexOf("lib/") === 0 || url.indexOf("js/umbraco.") === 0){ + return resourceObj; + } + + resourceObj.url = resourceObj.url + "?umb__rnd=" + (new Date).getTime(); + return resourceObj; +}); + Main.js;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252 diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index fff22e99dc..cb99c25451 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -1997,6 +1997,7 @@ ResXFileCodeGenerator Resources.Designer.cs + Designer ResXFileCodeGenerator From 36a8599e6271c04f05e9c08e29433979b9bb164f Mon Sep 17 00:00:00 2001 From: perploug Date: Mon, 10 Feb 2014 13:02:16 +0100 Subject: [PATCH 5/5] Adds cache bursting to production mode Package installer bumps CDF version, we make sure to purge the angular cache initial js loader gets a cache burst as well --- .../src/common/services/util.service.js | 18 ++++++------- .../umbraco/Views/Default.cshtml | 12 +++------ .../umbraco/developer/Packages/installer.aspx | 25 +++++++++++++++++-- .../UI/JavaScript/JsInitialization.cs | 16 ++++++------ .../UI/JavaScript/Resources.Designer.cs | 6 ++++- src/Umbraco.Web/UI/JavaScript/Resources.resx | 6 ++++- src/Umbraco.Web/UrlHelperExtensions.cs | 24 ++++++++++++++++++ .../developer/Packages/installer.aspx.cs | 7 +++++- 8 files changed, 83 insertions(+), 31 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/services/util.service.js b/src/Umbraco.Web.UI.Client/src/common/services/util.service.js index 0b416a2753..64e4fa222b 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/util.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/util.service.js @@ -1,20 +1,20 @@ /*Contains multiple services for various helper tasks */ -function packageHelper(assetsService, treeService, eventsService) { +function packageHelper(assetsService, treeService, eventsService, $templateCache) { return { /** Called when a package is installed, this resets a bunch of data and ensures the new package assets are loaded in */ packageInstalled: function () { - //assetsService._reloadApplicationAssets().then(function() { - // treeService.clearCache(); - // //send event - // //eventsService.emit("app.reInitialize"); - // //TODO: This doesn't work and will end in an infinite browser load loop, we can't really - // // re-bootstrap anyways since that would be the same as loading the whole browser window. - // //angular.bootstrap(document, ['umbraco']); - //}); + //clears the tree + treeService.clearCache(); + + //clears the template cache + $templateCache.removeAll(); + + //emit event to notify anything else + eventsService.emit("app.reInitialize"); } }; diff --git a/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml b/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml index d7ce3ddb63..1f036c8609 100644 --- a/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml +++ b/src/Umbraco.Web.UI/umbraco/Views/Default.cshtml @@ -5,15 +5,9 @@ @using Umbraco.Web @using Umbraco.Web.Editors @using umbraco -@inherits System.Web.Mvc.WebViewPage -@{ - Layout = null; - var applicationJs = Url.Action("Application", "BackOffice"); - if (GlobalSettings.DebugMode) { - applicationJs = applicationJs + "?umb__rnd=" + System.DateTime.Now.Ticks; - } -} +@inherits System.Web.Mvc.WebViewPage + @@ -61,7 +55,7 @@ @*And finally we can load in our angular app*@ - + diff --git a/src/Umbraco.Web.UI/umbraco/developer/Packages/installer.aspx b/src/Umbraco.Web.UI/umbraco/developer/Packages/installer.aspx index 0aae25a974..1f0c4a873e 100644 --- a/src/Umbraco.Web.UI/umbraco/developer/Packages/installer.aspx +++ b/src/Umbraco.Web.UI/umbraco/developer/Packages/installer.aspx @@ -28,6 +28,7 @@ + @@ -35,6 +36,7 @@ +

      @@ -94,6 +96,7 @@ +
      @@ -103,6 +106,7 @@ notifies you the install is completed.

      + @@ -121,8 +125,8 @@
      -

      - Binary files in the package!

      +

      Binary files in the package!

      + Read more...

      @@ -140,6 +144,7 @@

      +
      @@ -158,6 +163,7 @@

      +

      @@ -198,6 +204,7 @@

+

@@ -219,6 +226,7 @@

+

@@ -240,6 +248,7 @@

+