fix(teams): show an error message when no user is selected to add to a team
continuous-integration/drone/push Build is passing Details

This commit is contained in:
kolaente 2022-10-24 18:52:31 +02:00
parent 12faafbe7c
commit eae555475d
Signed by: konrad
GPG Key ID: F40E70337AB24C9B
2 changed files with 15 additions and 4 deletions

View File

@ -846,6 +846,7 @@
"userAddedSuccess": "The team member was successfully added.", "userAddedSuccess": "The team member was successfully added.",
"madeMember": "The team member was successfully made member.", "madeMember": "The team member was successfully made member.",
"madeAdmin": "The team member was successfully made admin.", "madeAdmin": "The team member was successfully made admin.",
"mustSelectUser": "Please select a user.",
"delete": { "delete": {
"header": "Delete the team", "header": "Delete the team",
"text1": "Are you sure you want to delete this team and all of its members?", "text1": "Are you sure you want to delete this team and all of its members?",

View File

@ -22,7 +22,7 @@
</div> </div>
<p <p
class="help is-danger" class="help is-danger"
v-if="showError && team.name === ''" v-if="showErrorTeamnameRequired && team.name === ''"
> >
{{ $t('team.attributes.nameRequired') }} {{ $t('team.attributes.nameRequired') }}
</p> </p>
@ -81,6 +81,9 @@
</x-button> </x-button>
</div> </div>
</div> </div>
<p class="help is-danger" v-if="showMustSelectUserError">
{{ $t('team.edit.mustSelectUser') }}
</p>
</div> </div>
<table class="table has-actions is-striped is-hoverable is-fullwidth"> <table class="table has-actions is-striped is-hoverable is-fullwidth">
<tbody> <tbody>
@ -228,7 +231,8 @@ const foundUsers = ref<IUser[]>()
const showDeleteModal = ref(false) const showDeleteModal = ref(false)
const showUserDeleteModal = ref(false) const showUserDeleteModal = ref(false)
const showLeaveModal = ref(false) const showLeaveModal = ref(false)
const showError = ref(false) const showErrorTeamnameRequired = ref(false)
const showMustSelectUserError = ref(false)
const title = ref('') const title = ref('')
@ -242,10 +246,10 @@ async function loadTeam() {
async function save() { async function save() {
if (team.value?.name === '') { if (team.value?.name === '') {
showError.value = true showErrorTeamnameRequired.value = true
return return
} }
showError.value = false showErrorTeamnameRequired.value = false
team.value = await teamService.value.update(team.value) team.value = await teamService.value.update(team.value)
success({message: t('team.edit.success')}) success({message: t('team.edit.success')})
@ -271,10 +275,16 @@ async function deleteMember() {
} }
async function addUser() { async function addUser() {
showMustSelectUserError.value = false
if(!newMember.value) {
showMustSelectUserError.value = true
return
}
await teamMemberService.value.create({ await teamMemberService.value.create({
teamId: teamId.value, teamId: teamId.value,
username: newMember.value.username, username: newMember.value.username,
}) })
newMember.value = null
await loadTeam() await loadTeam()
success({message: t('team.edit.userAddedSuccess')}) success({message: t('team.edit.userAddedSuccess')})
} }