diff options
| author | Rasmus Fuhse <fuhse@data-quest.de> | 2023-08-31 11:48:31 +0000 |
|---|---|---|
| committer | Rasmus Fuhse <fuhse@data-quest.de> | 2023-08-31 11:48:31 +0000 |
| commit | bcf449c0e054adcdfeacc3ba098f6c3357a4e69d (patch) | |
| tree | 810af30d22e8b48e8b2158f91b825e7c9ef3c1ba /resources | |
| parent | 4d7526194dbe2c648c4b4b409c99dd7ed7332f24 (diff) | |
Resolve "Ankündigungen können über den Arbeitsplatz nicht gespeichert werden"
Closes #2365
Merge request studip/studip!1995
Diffstat (limited to 'resources')
| -rw-r--r-- | resources/vue/components/EditableList.vue | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/resources/vue/components/EditableList.vue b/resources/vue/components/EditableList.vue index 3b30e5e..3199f71 100644 --- a/resources/vue/components/EditableList.vue +++ b/resources/vue/components/EditableList.vue @@ -1,13 +1,19 @@ <template> <div> + <div hidden> + <label class="hiddeninput" v-if="required && sortedItems.length === 0"> + <span class="textlabel">{{ label }}</span> + <input type="text" required value=""> + </label> + </div> <div class="formpart"> <ul class="clean editablelist"> <li v-for="item in sortedItems" :key="item.id" :data-type="item.type"> - <studip-icon v-if="item.icon" :shape="item.icon" role="info" size="20" class="text-bottom" alt=""></studip-icon> + <studip-icon v-if="item.icon" :shape="item.icon" role="info" :size="20" class="text-bottom" alt=""></studip-icon> <input v-if="name" type="hidden" :name="name + '[]'" :value="item.value"> <span>{{item.name}}</span> <button v-if="item.deletable" @click.prevent="deleteItem(item)" :title="$gettextInterpolate($gettext('%{ name } löschen'), {name: item.name})" class="undecorated"> - <studip-icon shape="trash" role="clickable" size="20" class="text-bottom"></studip-icon> + <studip-icon shape="trash" role="clickable" :size="20" class="text-bottom"></studip-icon> </button> </li> </ul> @@ -57,6 +63,15 @@ export default { type: Array, required: false, default: () => [], + }, + required: { + required: false, + type: Boolean, + default: false + }, + label: { + type: String, + required: false } }, data () { |
