Merge pull request #43493 from nextcloud/fix/subadmin-required-groups

fix(settings): Fix required groups validation for subadmins
This commit is contained in:
Pytal 2024-02-21 01:07:21 -08:00 committed by GitHub
commit 1ab0dff259
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 8 additions and 26 deletions

View file

@ -75,13 +75,6 @@
spellcheck="false"
:required="newUser.password === '' || settings.newUserRequireEmail" />
<div class="modal__item">
<!-- hidden input trick for vanilla html5 form validation -->
<NcTextField v-if="!settings.isAdmin"
id="new-user-groups-input"
tabindex="-1"
:class="{ 'icon-loading-small': loading.groups }"
:value="newUser.groups"
:required="!settings.isAdmin" />
<label class="modal__label"
for="new-user-groups">
{{ !settings.isAdmin ? t('settings', 'Groups (required)') : t('settings', 'Groups') }}
@ -96,13 +89,14 @@
:close-on-select="false"
:multiple="true"
:taggable="true"
:required="!settings.isAdmin"
@input="handleGroupInput"
@option:created="createGroup" />
<!-- If user is not admin, he is a subadmin.
Subadmins can't create users outside their groups
Therefore, empty select is forbidden -->
</div>
<div v-if="subAdminsGroups.length > 0 && settings.isAdmin"
<div v-if="subAdminsGroups.length > 0"
class="modal__item">
<label class="modal__label"
for="new-user-sub-admin">
@ -396,18 +390,6 @@ export default {
align-items: center;
padding: 20px;
gap: 4px 0;
/* fake input for groups validation */
#new-user-groups-input {
position: absolute;
opacity: 0;
/* The "hidden" input is behind the NcSelect, so in general it does
* not receives clicks. However, with Firefox, after the validation
* fails, it will receive the first click done on it, so its width needs
* to be set to 0 to prevent that ("pointer-events: none" does not
* prevent it). */
width: 0;
}
}
&__item {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long