summaryrefslogtreecommitdiff
path: root/src/views/AccessControl/LocalUserManagement/ModalUser.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/views/AccessControl/LocalUserManagement/ModalUser.vue')
-rw-r--r--src/views/AccessControl/LocalUserManagement/ModalUser.vue75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/views/AccessControl/LocalUserManagement/ModalUser.vue b/src/views/AccessControl/LocalUserManagement/ModalUser.vue
new file mode 100644
index 00000000..70cd6141
--- /dev/null
+++ b/src/views/AccessControl/LocalUserManagement/ModalUser.vue
@@ -0,0 +1,75 @@
+<template>
+ <b-modal
+ id="modal-user"
+ @ok="$emit('ok', { newUser, form })"
+ @hidden="$emit('hidden')"
+ >
+ <template v-slot:modal-title>
+ <template v-if="newUser">
+ Add user
+ </template>
+ <template v-else>
+ Edit user
+ </template>
+ </template>
+ <b-form>
+ <b-form-group label="Account status">
+ <b-form-radio v-model="form.status" name="user-status" value="true"
+ >Enabled</b-form-radio
+ >
+ <b-form-radio v-model="form.status" name="user-status" value="false"
+ >Disabled</b-form-radio
+ >
+ </b-form-group>
+ <b-form-group label="Username">
+ <b-form-input type="text" v-model="form.username" />
+ </b-form-group>
+ <b-form-group label="Privilege">
+ <b-form-select
+ v-model="form.privilege"
+ :options="privilegeTypes"
+ ></b-form-select>
+ </b-form-group>
+ <b-form-group label="Password">
+ <b-form-input type="password" v-model="form.password" />
+ </b-form-group>
+ </b-form>
+ <template v-slot:modal-ok>
+ <template v-if="newUser">
+ Add user
+ </template>
+ <template v-else>
+ Save
+ </template>
+ </template>
+ </b-modal>
+</template>
+
+<script>
+export default {
+ props: ["user"],
+ data() {
+ return {
+ privilegeTypes: ["Administrator", "Operator", "ReadOnly", "NoAccess"]
+ };
+ },
+ computed: {
+ newUser() {
+ return this.user ? false : true;
+ },
+ form() {
+ return {
+ originalUsername: this.newUser ? null : this.user.username,
+ status: this.newUser
+ ? true
+ : this.user.status === "Enabled"
+ ? true
+ : false,
+ username: this.newUser ? "" : this.user.username,
+ privilege: this.newUser ? "" : this.user.privilege,
+ password: ""
+ };
+ }
+ }
+};
+</script>