- |
+ |
Uhrzeit |
Aktivität |
Länge / Gesamtzeit (Min) |
@@ -76,7 +76,7 @@
{{ activity.name }} ({{ activity.durationText || '' }} / {{
- activity.duration }} Minuten)
+ activity.duration }} Minuten)
@@ -106,14 +106,15 @@
Aktivitäten
-
-
{{ activity.description }}
+
@@ -124,7 +125,8 @@
Notizen für {{ selectedMember.firstName }} {{ selectedMember.lastName }}
+ @remove="removeMemberTag" @input="updateMemberTags" :allow-empty="false"
+ @keydown.enter.prevent="addNewTagForMemberFromInput" />
@@ -381,6 +383,12 @@ export default {
closeNotesModal() {
this.showNotesModal = false;
},
+ async addNewTagFromInput(event) {
+ const inputValue = event.target.value.trim();
+ if (inputValue) {
+ await this.addNewTag(inputValue);
+ }
+ },
async addNewTag(newTagName) {
try {
const response = await apiClient.post('/tags', { name: newTagName });
@@ -392,13 +400,19 @@ export default {
alert('Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.');
}
},
+ async addNewTagForMemberFromInput(event) {
+ const inputValue = event.target.value.trim();
+ if (inputValue) {
+ await this.addNewTagForMember(inputValue);
+ }
+ },
async addNewTagForMember(newTagName) {
try {
const response = await apiClient.post('/tags', { name: newTagName });
const newTag = response.data;
this.availableTags.push(newTag);
this.selectedMemberTags.push(newTag);
- await this.linkTagToMemberAndDate(newTag.id);
+ await this.linkTagToMemberAndDate(newTag);
} catch (error) {
console.error('Fehler beim Hinzufügen eines neuen Tags für das Mitglied:', error);
alert('Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.');
@@ -429,27 +443,35 @@ export default {
alert('Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.');
}
},
- async updateActivityTags(selectedTags) {
+ async updateActivityTags() {
try {
+ const selectedTags = this.selectedActivityTags;
+
+ if (!selectedTags || !Array.isArray(selectedTags)) {
+ console.log(typeof selectedTags, JSON.stringify(selectedTags));
+ throw new TypeError('Expected selectedTags to be an array');
+ }
+
for (let tag of selectedTags) {
if (!this.previousActivityTags.includes(tag)) {
await this.linkTagToDiaryDate(tag);
}
}
+
this.previousActivityTags = [...selectedTags];
} catch (error) {
console.error('Fehler beim Verknüpfen der Tags mit dem Trainingstag:', error);
alert('Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.');
}
},
- async updateMemberTags(selectedTags) {
+ async updateMemberTags() {
try {
- for (let tag of selectedTags) {
+ for (let tag of this.selectedMemberTags) {
if (!this.previousMemberTags.includes(tag)) {
await this.linkTagToMemberAndDate(tag);
}
}
- this.previousMemberTags = [...selectedTags];
+ this.previousMemberTags = [...this.selectedMemberTags];
} catch (error) {
console.error('Fehler beim Verknüpfen der Tags mit dem Mitglied und Datum:', error);
alert('Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.');