add toggle to allow access to all languages

This commit is contained in:
Mads Rasmussen
2022-07-07 09:36:34 +02:00
parent 7d6d826a4a
commit 11a670bbe4
3 changed files with 30 additions and 9 deletions

View File

@@ -2166,6 +2166,7 @@ To manage your website, simply open the Umbraco backoffice and start adding cont
<key alias="profile">Profile</key>
<key alias="searchAllChildren">Search all children</key>
<key alias="languagesHelp">Limit the languages users have access to edit</key>
<key alias="allowAccessToAllLanguages">Allow access to all languages</key>
<key alias="sectionsHelp">Add sections to give users access</key>
<key alias="selectUserGroups">Select user groups</key>
<key alias="noStartNode">No start node selected</key>

View File

@@ -22,6 +22,7 @@
vm.goToPage = goToPage;
vm.openLanguagePicker = openLanguagePicker;
vm.toggleAllowAllLanguages = toggleAllowAllLanguages;
vm.removeLanguage = removeLanguage;
vm.openSectionPicker = openSectionPicker;
vm.openContentPicker = openContentPicker;
@@ -46,7 +47,8 @@
"defaultdialogs_selectNode",
"general_groups",
"content_contentRoot",
"media_mediaRoot"
"media_mediaRoot",
"user_allowAccessToAllLanguages"
];
localizationService.localizeMany(labelKeys).then(function (values) {
@@ -57,6 +59,7 @@
vm.labels.groups = values[4];
vm.labels.contentRoot = values[5];
vm.labels.mediaRoot = values[6];
vm.labels.allowAccessToAllLanguages = values[7];
});
localizationService.localize("general_add").then(function (name) {
vm.labels.add = name;
@@ -114,6 +117,10 @@
$location.path(ancestor.path);
}
function toggleAllowAllLanguages () {
vm.userGroup.hasAccessToAllLanguages = !vm.userGroup.hasAccessToAllLanguages;
}
function openLanguagePicker() {
var currentSelection = [];
Utilities.copy(vm.userGroup.languages, currentSelection);

View File

@@ -39,15 +39,28 @@
<umb-control-group style="margin-bottom: 20px;" label="@treeHeaders_languages"
description="@user_languagesHelp">
<umb-node-preview style="max-width: 100%;" ng-repeat="language in vm.userGroup.languages"
icon="vm.languageIcon" name="language.name" allow-remove="true"
on-remove="vm.removeLanguage($index)">
</umb-node-preview>
<umb-toggle
style="margin-bottom: 10px;"
checked="vm.userGroup.hasAccessToAllLanguages"
on-click="vm.toggleAllowAllLanguages()"
label-on="{{ vm.labels.allowAccessToAllLanguages }}"
label-off="{{ vm.labels.allowAccessToAllLanguages }}"
label-position="right"
show-labels="true">
</umb-toggle>
<div ng-if="!vm.userGroup.hasAccessToAllLanguages">
<umb-node-preview style="max-width: 100%;" ng-repeat="language in vm.userGroup.languages"
icon="vm.languageIcon" name="language.name" allow-remove="true"
on-remove="vm.removeLanguage($index)">
</umb-node-preview>
<button type="button" class="umb-node-preview-add" style="max-width: 100%;"
ng-click="vm.openLanguagePicker()">
<localize key="general_add">Add</localize>
</button>
<button type="button" class="umb-node-preview-add" style="max-width: 100%;"
ng-click="vm.openLanguagePicker()">
<localize key="general_add">Add</localize>
</button>
</div>
</umb-control-group>
<umb-control-group style="margin-bottom: 20px;" label="@user_startnode"