Skip to content

Commit 2f60a47

Browse files
Merge branch 'v8/8.12' into v8/dev
2 parents c881fa9 + acaf194 commit 2f60a47

File tree

6 files changed

+43
-54
lines changed

6 files changed

+43
-54
lines changed

src/SolutionInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@
1818
[assembly: AssemblyVersion("8.0.0")]
1919

2020
// these are FYI and changed automatically
21-
[assembly: AssemblyFileVersion("8.12.1")]
22-
[assembly: AssemblyInformationalVersion("8.12.1")]
21+
[assembly: AssemblyFileVersion("8.12.2")]
22+
[assembly: AssemblyInformationalVersion("8.12.2")]

src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/userpicker/userpicker.controller.js

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
(function () {
22
"use strict";
33

4-
function UserPickerController($scope, usersResource, localizationService, eventsService) {
5-
4+
function UserPickerController($scope, entityResource, localizationService, eventsService) {
5+
66
var vm = this;
77

88
vm.users = [];
@@ -102,17 +102,9 @@
102102
vm.loading = true;
103103

104104
// Get users
105-
usersResource.getPagedResults(vm.usersOptions).then(function (users) {
106-
107-
vm.users = users.items;
108-
109-
vm.usersOptions.pageNumber = users.pageNumber;
110-
vm.usersOptions.pageSize = users.pageSize;
111-
vm.usersOptions.totalItems = users.totalItems;
112-
vm.usersOptions.totalPages = users.totalPages;
113-
105+
entityResource.getAll("User").then(function (data) {
106+
vm.users = data;
114107
preSelect($scope.model.selection, vm.users);
115-
116108
vm.loading = false;
117109
});
118110
}

src/Umbraco.Web.UI.Client/src/views/propertyeditors/grid/editors/media.controller.js

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
angular.module("umbraco")
22
.controller("Umbraco.PropertyEditors.Grid.MediaController",
3-
function ($scope, userService, editorService, localizationService) {
4-
5-
$scope.thumbnailUrl = getThumbnailUrl();
6-
3+
function ($scope, userService, editorService, localizationService) {
4+
5+
$scope.thumbnailUrl = getThumbnailUrl();
6+
77
if (!$scope.model.config.startNodeId) {
88
if ($scope.model.config.ignoreUserStartNodes === true) {
99
$scope.model.config.startNodeId = -1;
@@ -29,16 +29,16 @@ angular.module("umbraco")
2929
onlyImages: true,
3030
dataTypeKey: $scope.model.dataTypeKey,
3131
submit: model => {
32-
updateControlValue(model.selection[0]);
32+
updateControlValue(model.selection[0]);
3333
editorService.close();
3434
},
35-
close: () => editorService.close()
35+
close: () => editorService.close()
3636
};
3737

3838
editorService.mediaPicker(mediaPicker);
3939
};
4040

41-
$scope.editImage = function() {
41+
$scope.editImage = function() {
4242

4343
const mediaCropDetailsConfig = {
4444
size: 'small',
@@ -47,17 +47,17 @@ angular.module("umbraco")
4747
updateControlValue(model.target);
4848
editorService.close();
4949
},
50-
close: () => editorService.close()
50+
close: () => editorService.close()
5151
};
5252

5353
localizationService.localize('defaultdialogs_editSelectedMedia').then(value => {
5454
mediaCropDetailsConfig.title = value;
5555
editorService.mediaCropDetails(mediaCropDetailsConfig);
56-
});
56+
});
5757
}
58-
58+
5959
/**
60-
*
60+
*
6161
*/
6262
function getThumbnailUrl() {
6363

@@ -94,19 +94,15 @@ angular.module("umbraco")
9494

9595
return url;
9696
}
97-
97+
9898
return null;
9999
}
100100

101101
/**
102-
*
103-
* @param {object} selectedImage
102+
*
103+
* @param {object} selectedImage
104104
*/
105105
function updateControlValue(selectedImage) {
106-
107-
const doGetThumbnail = $scope.control.value.focalPoint !== selectedImage.focalPoint
108-
|| $scope.control.value.image !== selectedImage.image;
109-
110106
// we could apply selectedImage directly to $scope.control.value,
111107
// but this allows excluding fields in future if needed
112108
$scope.control.value = {
@@ -118,10 +114,6 @@ angular.module("umbraco")
118114
caption: selectedImage.caption,
119115
altText: selectedImage.altText
120116
};
121-
122-
123-
if (doGetThumbnail) {
124-
$scope.thumbnailUrl = getThumbnailUrl();
125-
}
126-
}
117+
$scope.thumbnailUrl = getThumbnailUrl();
118+
}
127119
});

src/Umbraco.Web.UI.Client/src/views/propertyeditors/userpicker/userpicker.controller.js

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
function userPickerController($scope, usersResource , iconHelper, editorService, overlayService){
1+
function userPickerController($scope, iconHelper, editorService, overlayService, entityResource) {
22

33
function trim(str, chr) {
44
var rgxtrim = (!chr) ? new RegExp('^\\s+|\\s+$', 'g') : new RegExp('^' + chr + '+|' + chr + '+$', 'g');
@@ -92,17 +92,22 @@ function userPickerController($scope, usersResource , iconHelper, editorService,
9292
unsubscribe();
9393
});
9494

95-
//load user data
96-
var modelIds = $scope.model.value ? $scope.model.value.split(',') : [];
97-
98-
// entityResource.getByIds doesn't support "User" and we would like to show avatars in umb-user-preview as well.
99-
usersResource.getUsers(modelIds).then(function (data) {
100-
_.each(data, function (item, i) {
101-
// set default icon if it's missing
102-
item.icon = item.icon ? iconHelper.convertFromLegacyIcon(item.icon) : "icon-user";
103-
$scope.renderModel.push({ name: item.name, id: item.id, udi: item.udi, icon: item.icon, avatars: item.avatars });
104-
});
105-
});
95+
//load user data - split to an array of ints (map)
96+
const modelIds = $scope.model.value ? $scope.model.value.split(',').map(x => +x) : [];
97+
if(modelIds.length !== 0) {
98+
entityResource.getAll("User").then(function (users) {
99+
const filteredUsers = users.filter(user => modelIds.indexOf(user.id) !== -1);
100+
filteredUsers.forEach(item => {
101+
$scope.renderModel.push({
102+
name: item.name,
103+
id: item.id,
104+
udi: item.udi,
105+
icon: item.icon = item.icon ? iconHelper.convertFromLegacyIcon(item.icon) : "icon-user",
106+
avatars: item.avatars
107+
});
108+
});
109+
});
110+
}
106111
}
107112

108113

src/Umbraco.Web.UI/Umbraco.Web.UI.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,9 +347,9 @@
347347
<WebProjectProperties>
348348
<UseIIS>False</UseIIS>
349349
<AutoAssignPort>True</AutoAssignPort>
350-
<DevelopmentServerPort>8121</DevelopmentServerPort>
350+
<DevelopmentServerPort>8122</DevelopmentServerPort>
351351
<DevelopmentServerVPath>/</DevelopmentServerVPath>
352-
<IISUrl>http://localhost:8121</IISUrl>
352+
<IISUrl>http://localhost:8122</IISUrl>
353353
<NTLMAuthentication>False</NTLMAuthentication>
354354
<UseCustomServer>False</UseCustomServer>
355355
<CustomServerUrl>

src/Umbraco.Web/PropertyEditors/GridPropertyEditor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,8 +202,8 @@ public IEnumerable<UmbracoEntityReference> GetReferences(object value)
202202
_richTextPropertyValueEditor.GetReferences(x.Value)))
203203
yield return umbracoEntityReference;
204204

205-
foreach (var umbracoEntityReference in mediaValues.SelectMany(x =>
206-
_mediaPickerPropertyValueEditor.GetReferences(x.Value["udi"])))
205+
foreach (var umbracoEntityReference in mediaValues.Where(x => x.Value.HasValues)
206+
.SelectMany(x => _mediaPickerPropertyValueEditor.GetReferences(x.Value["udi"])))
207207
yield return umbracoEntityReference;
208208
}
209209
}

0 commit comments

Comments
 (0)