add close button
Signed-off-by: GretaD <gretadoci@gmail.com>
This commit is contained in:
parent
b5f4146d7c
commit
a958eacd9c
1 changed files with 36 additions and 24 deletions
|
@ -152,6 +152,13 @@
|
||||||
class="button primary icon-checkmark-white has-tooltip"
|
class="button primary icon-checkmark-white has-tooltip"
|
||||||
type="submit"
|
type="submit"
|
||||||
value="">
|
value="">
|
||||||
|
<div class="closeButton">
|
||||||
|
<Actions>
|
||||||
|
<ActionButton icon="icon-close" @click="onClose">
|
||||||
|
{{ t('settings', 'Close') }}
|
||||||
|
</ActionButton>
|
||||||
|
</Actions>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
<div id="grid-header"
|
<div id="grid-header"
|
||||||
|
@ -235,17 +242,17 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import userRow from './UserList/UserRow'
|
import userRow from './UserList/UserRow'
|
||||||
import { Multiselect } from 'nextcloud-vue'
|
import { Multiselect, Actions, ActionButton } from 'nextcloud-vue'
|
||||||
import InfiniteLoading from 'vue-infinite-loading'
|
import InfiniteLoading from 'vue-infinite-loading'
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
|
|
||||||
const unlimitedQuota = {
|
const unlimitedQuota = {
|
||||||
id: 'none',
|
id: 'none',
|
||||||
label: t('settings', 'Unlimited'),
|
label: t('settings', 'Unlimited')
|
||||||
}
|
}
|
||||||
const defaultQuota = {
|
const defaultQuota = {
|
||||||
id: 'default',
|
id: 'default',
|
||||||
label: t('settings', 'Default quota'),
|
label: t('settings', 'Default quota')
|
||||||
}
|
}
|
||||||
const newUser = {
|
const newUser = {
|
||||||
id: '',
|
id: '',
|
||||||
|
@ -257,8 +264,8 @@ const newUser = {
|
||||||
quota: defaultQuota,
|
quota: defaultQuota,
|
||||||
language: {
|
language: {
|
||||||
code: 'en',
|
code: 'en',
|
||||||
name: t('settings', 'Default language'),
|
name: t('settings', 'Default language')
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
@ -267,24 +274,26 @@ export default {
|
||||||
userRow,
|
userRow,
|
||||||
Multiselect,
|
Multiselect,
|
||||||
InfiniteLoading,
|
InfiniteLoading,
|
||||||
|
Actions,
|
||||||
|
ActionButton
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
users: {
|
users: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => [],
|
default: () => []
|
||||||
},
|
},
|
||||||
showConfig: {
|
showConfig: {
|
||||||
type: Object,
|
type: Object,
|
||||||
required: true,
|
required: true
|
||||||
},
|
},
|
||||||
selectedGroup: {
|
selectedGroup: {
|
||||||
type: String,
|
type: String,
|
||||||
default: null,
|
default: null
|
||||||
},
|
},
|
||||||
externalActions: {
|
externalActions: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => [],
|
default: () => []
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -292,11 +301,11 @@ export default {
|
||||||
defaultQuota,
|
defaultQuota,
|
||||||
loading: {
|
loading: {
|
||||||
all: false,
|
all: false,
|
||||||
groups: false,
|
groups: false
|
||||||
},
|
},
|
||||||
scrolled: false,
|
scrolled: false,
|
||||||
searchQuery: '',
|
searchQuery: '',
|
||||||
newUser: Object.assign({}, newUser),
|
newUser: Object.assign({}, newUser)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -335,9 +344,9 @@ export default {
|
||||||
},
|
},
|
||||||
quotaOptions() {
|
quotaOptions() {
|
||||||
// convert the preset array into objects
|
// convert the preset array into objects
|
||||||
const quotaPreset = this.settings.quotaPreset.reduce((acc, cur) => acc.concat({
|
let quotaPreset = this.settings.quotaPreset.reduce((acc, cur) => acc.concat({
|
||||||
id: cur,
|
id: cur,
|
||||||
label: cur,
|
label: cur
|
||||||
}), [])
|
}), [])
|
||||||
// add default presets
|
// add default presets
|
||||||
quotaPreset.unshift(this.unlimitedQuota)
|
quotaPreset.unshift(this.unlimitedQuota)
|
||||||
|
@ -362,14 +371,14 @@ export default {
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
label: t('settings', 'Common languages'),
|
label: t('settings', 'Common languages'),
|
||||||
languages: this.settings.languages.commonlanguages,
|
languages: this.settings.languages.commonlanguages
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: t('settings', 'All languages'),
|
label: t('settings', 'All languages'),
|
||||||
languages: this.settings.languages.languages,
|
languages: this.settings.languages.languages
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
// watch url change and group select
|
// watch url change and group select
|
||||||
|
@ -393,7 +402,7 @@ export default {
|
||||||
} else if (val === 1 && old === 0) {
|
} else if (val === 1 && old === 0) {
|
||||||
this.$refs.infiniteLoading.stateChanger.loaded()
|
this.$refs.infiniteLoading.stateChanger.loaded()
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
if (!this.settings.canChangePassword) {
|
if (!this.settings.canChangePassword) {
|
||||||
|
@ -428,7 +437,7 @@ export default {
|
||||||
*/
|
*/
|
||||||
validateQuota(quota) {
|
validateQuota(quota) {
|
||||||
// only used for new presets sent through @Tag
|
// only used for new presets sent through @Tag
|
||||||
const validQuota = OC.Util.computerFileSize(quota)
|
let validQuota = OC.Util.computerFileSize(quota)
|
||||||
if (validQuota !== null && validQuota >= 0) {
|
if (validQuota !== null && validQuota >= 0) {
|
||||||
// unify format output
|
// unify format output
|
||||||
quota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota))
|
quota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota))
|
||||||
|
@ -445,7 +454,7 @@ export default {
|
||||||
offset: this.usersOffset,
|
offset: this.usersOffset,
|
||||||
limit: this.usersLimit,
|
limit: this.usersLimit,
|
||||||
group: this.selectedGroup !== 'disabled' ? this.selectedGroup : '',
|
group: this.selectedGroup !== 'disabled' ? this.selectedGroup : '',
|
||||||
search: this.searchQuery,
|
search: this.searchQuery
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
response ? $state.loaded() : $state.complete()
|
response ? $state.loaded() : $state.complete()
|
||||||
|
@ -493,7 +502,7 @@ export default {
|
||||||
groups: this.newUser.groups.map(group => group.id),
|
groups: this.newUser.groups.map(group => group.id),
|
||||||
subadmin: this.newUser.subAdminsGroups.map(group => group.id),
|
subadmin: this.newUser.subAdminsGroups.map(group => group.id),
|
||||||
quota: this.newUser.quota.id,
|
quota: this.newUser.quota.id,
|
||||||
language: this.newUser.language.code,
|
language: this.newUser.language.code
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.resetForm()
|
this.resetForm()
|
||||||
|
@ -516,7 +525,7 @@ export default {
|
||||||
setNewUserDefaultGroup(value) {
|
setNewUserDefaultGroup(value) {
|
||||||
if (value && value.length > 0) {
|
if (value && value.length > 0) {
|
||||||
// setting new user default group to the current selected one
|
// setting new user default group to the current selected one
|
||||||
const currentGroup = this.groups.find(group => group.id === value)
|
let currentGroup = this.groups.find(group => group.id === value)
|
||||||
if (currentGroup) {
|
if (currentGroup) {
|
||||||
this.newUser.groups = [currentGroup]
|
this.newUser.groups = [currentGroup]
|
||||||
return
|
return
|
||||||
|
@ -560,6 +569,9 @@ export default {
|
||||||
this.$refs.infiniteLoading.stateChanger.reset()
|
this.$refs.infiniteLoading.stateChanger.reset()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
onClose() {
|
||||||
|
this.showConfig.showNewUserForm = false
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
Loading…
Reference in a new issue