Skip to content

Commit 73439d4

Browse files
Fixes #9983 - Getting kicked, if document type has a Umbraco.UserPicker property (#10002)
* Fixes #9983 Temporary fix for this issue. using the entityservice like before. * Needed to remove the call to usersResource here as well for displaying the picked items * Don't need usersResource for now (cherry picked from commit 45de0a1)
1 parent e17bf38 commit 73439d4

File tree

2 files changed

+21
-24
lines changed

2 files changed

+21
-24
lines changed

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/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

0 commit comments

Comments
 (0)