diff --git a/build/Build.bat b/build/Build.bat index 122eec9af6..6cfb3af5c7 100644 --- a/build/Build.bat +++ b/build/Build.bat @@ -1,6 +1,6 @@ @ECHO OFF SET release=7.1.0 -SET comment= +SET comment=beta SET version=%release% IF [%comment%] EQU [] (SET version=%release%) ELSE (SET version=%release%-%comment%) diff --git a/src/Umbraco.Core/Configuration/UmbracoVersion.cs b/src/Umbraco.Core/Configuration/UmbracoVersion.cs index e9a948c125..c4f0678fd4 100644 --- a/src/Umbraco.Core/Configuration/UmbracoVersion.cs +++ b/src/Umbraco.Core/Configuration/UmbracoVersion.cs @@ -23,7 +23,7 @@ namespace Umbraco.Core.Configuration /// Gets the version comment (like beta or RC). /// /// The version comment. - public static string CurrentComment { get { return ""; } } + public static string CurrentComment { get { return "beta"; } } // Get the version of the umbraco.dll by looking at a class in that dll // Had to do it like this due to medium trust issues, see: http://haacked.com/archive/2010/11/04/assembly-location-and-medium-trust.aspx diff --git a/src/Umbraco.Web.UI.Client/src/common/services/tinymce.service.js b/src/Umbraco.Web.UI.Client/src/common/services/tinymce.service.js index a5eb08da98..5f5dbb2141 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/tinymce.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/tinymce.service.js @@ -85,19 +85,34 @@ function tinyMceService(dialogService, $log, imageHelper, $http, $timeout, macro icon: 'custom icon-picture', tooltip: 'Media Picker', onclick: function () { + + var selectedElm = editor.selection.getNode(), + currentTarget; + + + if(selectedElm.nodeName === 'IMG'){ + var img = $(selectedElm); + currentTarget = { + name: img.attr("alt"), + url: img.attr("src"), + id: img.attr("rel") + }; + } + dialogService.mediaPicker({ + currentTarget: currentTarget, onlyImages: true, scope: $scope, callback: function (img) { if (img) { var imagePropVal = imageHelper.getImagePropertyValue({ imageModel: img, scope: $scope }); var data = { - alt: "Some description", - src: (imagePropVal) ? imagePropVal : "nothing.jpg", + alt: img.name, + src: (img.url) ? img.url : "nothing.jpg", + rel: img.id, id: '__mcenew' }; - editor.insertContent(editor.dom.createHTML('img', data)); $timeout(function () { @@ -131,8 +146,6 @@ function tinyMceService(dialogService, $log, imageHelper, $http, $timeout, macro */ createLinkPicker: function (editor, $scope) { - - /* editor.addButton('link', { icon: 'custom icon-link', diff --git a/src/Umbraco.Web.UI.Client/src/installer/installer.controller.js b/src/Umbraco.Web.UI.Client/src/installer/installer.controller.js index 30bf96a329..04d21f80b2 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/installer.controller.js +++ b/src/Umbraco.Web.UI.Client/src/installer/installer.controller.js @@ -30,3 +30,8 @@ angular.module("umbraco.install").controller("Umbraco.InstallerController", installerService.gotoStep(0); }; }); + +//this ensure that we start with a clean slate on every install and upgrade +angular.module("umbraco.install").run(function($templateCache){ + $templateCache.removeAll(); +}); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.controller.js b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.controller.js index 2ef6679e90..87bde9b6c0 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.controller.js @@ -1,7 +1,7 @@ //used for the media picker dialog angular.module("umbraco") .controller("Umbraco.Dialogs.MediaPickerController", - function ($scope, mediaResource, umbRequestHelper, entityResource, $log, imageHelper, eventsService, treeService, $cookies) { + function ($scope, mediaResource, umbRequestHelper, entityResource, $log, mediaHelper, eventsService, treeService, $cookies) { var dialogOptions = $scope.$parent.dialogOptions; $scope.onlyImages = dialogOptions.onlyImages; @@ -15,6 +15,12 @@ angular.module("umbraco") } }; + //preload selected item + $scope.target = undefined; + if(dialogOptions.currentTarget){ + $scope.target = dialogOptions.currentTarget; + } + $scope.submitFolder = function(e) { if (e.keyCode === 13) { e.preventDefault(); @@ -57,6 +63,7 @@ angular.module("umbraco") .then(function(data) { $scope.images = []; + $scope.searchTerm = ""; if(data.items){ $scope.images = data.items; @@ -64,9 +71,9 @@ angular.module("umbraco") //update the thumbnail property - _.each($scope.images, function(img) { - img.thumbnail = imageHelper.getThumbnail({ imageModel: img, scope: $scope }); - }); + //_.each($scope.images, function(img) { + // img.thumbnail = imageHelper.getThumbnail({ imageModel: img, scope: $scope }); + //}); //reject all images that have an empty thumbnail - this can occur if there's an image item // that doesn't have an uploaded image. @@ -79,11 +86,9 @@ angular.module("umbraco") }); $scope.options.formData.currentFolder = folder.id; - $scope.currentFolder = folder; - + $scope.currentFolder = folder; }; - $scope.$on('fileuploadstop', function(event, files) { $scope.gotoFolder($scope.currentFolder); }); @@ -100,13 +105,27 @@ angular.module("umbraco") $scope.select(image); image.cssclass = ($scope.dialogData.selection.indexOf(image) > -1) ? "selected" : ""; }else { - $scope.submit(image); + + $scope.target= {}; + $scope.target.id = image.id; + $scope.target.name = image.name; + $scope.target.url = mediaHelper.resolveFile(image); // getMediaPropertyValue({mediaModel: image}); + + //$scope.submit(image); } } }; + $scope.exitDetails = function(){ + if(!$scope.currentFolder){ + $scope.gotoFolder(); + } + + $scope.target = undefined; + }; + $scope.selectFolder= function(folder) { if ($scope.multiPicker) { $scope.select(folder); @@ -132,5 +151,8 @@ angular.module("umbraco") }; //default root item - $scope.gotoFolder(); + if(!$scope.target){ + $scope.gotoFolder(); + } + }); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.html b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.html index 7b6307ec2f..a351f0986a 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.html +++ b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/mediapicker.html @@ -1,7 +1,55 @@
-
+
+ + + +
+ + +
@@ -64,23 +112,23 @@ data-file-upload="options" data-file-upload-progress="" data-ng-class="{'fileupl
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js index 54886e3580..6d78fe52b0 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js @@ -15,10 +15,6 @@ */ function fileUploadController($scope, $element, $compile, imageHelper, fileManager, umbRequestHelper, mediaHelper) { - mediaHelper.registerFileResolver("Umbraco.UploadField", function(property){ - return property.value; - }); - /** Clears the file collections when content is saving (if we need to clear) or after saved */ function clearFiles() { //clear the files collection (we don't want to upload any!) @@ -127,4 +123,9 @@ function fileUploadController($scope, $element, $compile, imageHelper, fileManag }); }; angular.module("umbraco") - .controller('Umbraco.PropertyEditors.FileUploadController', fileUploadController); \ No newline at end of file + .controller('Umbraco.PropertyEditors.FileUploadController', fileUploadController) + .run(function(mediaHelper){ + mediaHelper.registerFileResolver("Umbraco.UploadField", function(property){ + return property.value; + }); + }); \ 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 index e55a83c72b..35b71ba2af 100644 --- 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 @@ -1,19 +1,11 @@ //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, $routeParams, $scope, $log, mediaHelper, cropperHelper, $timeout, editorState, umbRequestHelper, fileManager) { var config = $scope.model.config; - mediaHelper.registerFileResolver("Umbraco.ImageCropper", function (property) { - if (property.value.src) { - return property.value.src; - } else if (angular.isString(property.value)) { - return property.value; - } - }); - + //move previously saved value to the editor if ($scope.model.value) { //backwards compat with the old file upload (incase some-one swaps them..) @@ -102,4 +94,13 @@ angular.module('umbraco') reader.readAsDataURL(args.files[0]); } }); + }) + .run(function(mediaHelper){ + mediaHelper.registerFileResolver("Umbraco.ImageCropper", function (property) { + if (property.value.src) { + return property.value.src; + } else if (angular.isString(property.value)) { + return property.value; + } + }); }); \ No newline at end of file diff --git a/src/Umbraco.Web.UI/config/ClientDependency.config b/src/Umbraco.Web.UI/config/ClientDependency.config index e09251e424..d26bfe176a 100644 --- a/src/Umbraco.Web.UI/config/ClientDependency.config +++ b/src/Umbraco.Web.UI/config/ClientDependency.config @@ -10,7 +10,7 @@ NOTES: * Compression/Combination/Minification is not enabled unless debug="false" is specified on the 'compiliation' element in the web.config * A new version will invalidate both client and server cache and create new persisted files --> - +