Merge branch 'v8/8.12' into v8/dev

This commit is contained in:
Sebastiaan Janssen
2021-03-31 13:00:32 +02:00
6 changed files with 43 additions and 54 deletions

View File

@@ -1,8 +1,8 @@
(function () {
"use strict";
function UserPickerController($scope, usersResource, localizationService, eventsService) {
function UserPickerController($scope, entityResource, localizationService, eventsService) {
var vm = this;
vm.users = [];
@@ -102,17 +102,9 @@
vm.loading = true;
// Get users
usersResource.getPagedResults(vm.usersOptions).then(function (users) {
vm.users = users.items;
vm.usersOptions.pageNumber = users.pageNumber;
vm.usersOptions.pageSize = users.pageSize;
vm.usersOptions.totalItems = users.totalItems;
vm.usersOptions.totalPages = users.totalPages;
entityResource.getAll("User").then(function (data) {
vm.users = data;
preSelect($scope.model.selection, vm.users);
vm.loading = false;
});
}

View File

@@ -1,9 +1,9 @@
angular.module("umbraco")
.controller("Umbraco.PropertyEditors.Grid.MediaController",
function ($scope, userService, editorService, localizationService) {
$scope.thumbnailUrl = getThumbnailUrl();
function ($scope, userService, editorService, localizationService) {
$scope.thumbnailUrl = getThumbnailUrl();
if (!$scope.model.config.startNodeId) {
if ($scope.model.config.ignoreUserStartNodes === true) {
$scope.model.config.startNodeId = -1;
@@ -29,16 +29,16 @@ angular.module("umbraco")
onlyImages: true,
dataTypeKey: $scope.model.dataTypeKey,
submit: model => {
updateControlValue(model.selection[0]);
updateControlValue(model.selection[0]);
editorService.close();
},
close: () => editorService.close()
close: () => editorService.close()
};
editorService.mediaPicker(mediaPicker);
};
$scope.editImage = function() {
$scope.editImage = function() {
const mediaCropDetailsConfig = {
size: 'small',
@@ -47,17 +47,17 @@ angular.module("umbraco")
updateControlValue(model.target);
editorService.close();
},
close: () => editorService.close()
close: () => editorService.close()
};
localizationService.localize('defaultdialogs_editSelectedMedia').then(value => {
mediaCropDetailsConfig.title = value;
editorService.mediaCropDetails(mediaCropDetailsConfig);
});
});
}
/**
*
*
*/
function getThumbnailUrl() {
@@ -94,19 +94,15 @@ angular.module("umbraco")
return url;
}
return null;
}
/**
*
* @param {object} selectedImage
*
* @param {object} selectedImage
*/
function updateControlValue(selectedImage) {
const doGetThumbnail = $scope.control.value.focalPoint !== selectedImage.focalPoint
|| $scope.control.value.image !== selectedImage.image;
// we could apply selectedImage directly to $scope.control.value,
// but this allows excluding fields in future if needed
$scope.control.value = {
@@ -118,10 +114,6 @@ angular.module("umbraco")
caption: selectedImage.caption,
altText: selectedImage.altText
};
if (doGetThumbnail) {
$scope.thumbnailUrl = getThumbnailUrl();
}
}
$scope.thumbnailUrl = getThumbnailUrl();
}
});

View File

@@ -1,4 +1,4 @@
function userPickerController($scope, usersResource , iconHelper, editorService, overlayService){
function userPickerController($scope, iconHelper, editorService, overlayService, entityResource) {
function trim(str, chr) {
var rgxtrim = (!chr) ? new RegExp('^\\s+|\\s+$', 'g') : new RegExp('^' + chr + '+|' + chr + '+$', 'g');
@@ -92,17 +92,22 @@ function userPickerController($scope, usersResource , iconHelper, editorService,
unsubscribe();
});
//load user data
var modelIds = $scope.model.value ? $scope.model.value.split(',') : [];
// entityResource.getByIds doesn't support "User" and we would like to show avatars in umb-user-preview as well.
usersResource.getUsers(modelIds).then(function (data) {
_.each(data, function (item, i) {
// set default icon if it's missing
item.icon = item.icon ? iconHelper.convertFromLegacyIcon(item.icon) : "icon-user";
$scope.renderModel.push({ name: item.name, id: item.id, udi: item.udi, icon: item.icon, avatars: item.avatars });
});
});
//load user data - split to an array of ints (map)
const modelIds = $scope.model.value ? $scope.model.value.split(',').map(x => +x) : [];
if(modelIds.length !== 0) {
entityResource.getAll("User").then(function (users) {
const filteredUsers = users.filter(user => modelIds.indexOf(user.id) !== -1);
filteredUsers.forEach(item => {
$scope.renderModel.push({
name: item.name,
id: item.id,
udi: item.udi,
icon: item.icon = item.icon ? iconHelper.convertFromLegacyIcon(item.icon) : "icon-user",
avatars: item.avatars
});
});
});
}
}