delete sound in list
This commit is contained in:
parent
3fb9e0d62a
commit
c3c748eebb
File diff suppressed because one or more lines are too long
|
@ -38,5 +38,8 @@ sound-upload-url="{% url "api:sound-list" %}"
|
||||||
{% endwith %}
|
{% endwith %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</template>
|
</template>
|
||||||
|
<template #row-delete="{cell}">
|
||||||
|
<input type="checkbox" :name="'{{ formset.prefix }}-' + cell.row + '-DELETE'">
|
||||||
|
</template>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
@ -66,6 +66,7 @@ inline_labels_ = {
|
||||||
"discard_changes": _("Discard changes"),
|
"discard_changes": _("Discard changes"),
|
||||||
"select_file": _("Select a file"),
|
"select_file": _("Select a file"),
|
||||||
"submit": _("Submit"),
|
"submit": _("Submit"),
|
||||||
|
"delete": _("Delete"),
|
||||||
# track list
|
# track list
|
||||||
"columns": _("Columns"),
|
"columns": _("Columns"),
|
||||||
"timestamp": _("Timestamp"),
|
"timestamp": _("Timestamp"),
|
||||||
|
|
|
@ -55,9 +55,6 @@ class EpisodeUpdateView(UserPassesTestMixin, BaseProgramMixin, PageUpdateView):
|
||||||
program = self.get_object().program
|
program = self.get_object().program
|
||||||
return self.request.user.has_perm("aircox.%s" % program.change_permission_codename)
|
return self.request.user.has_perm("aircox.%s" % program.change_permission_codename)
|
||||||
|
|
||||||
def get_success_url(self):
|
|
||||||
return reverse("episode-detail", kwargs={"slug": self.get_object().slug})
|
|
||||||
|
|
||||||
def get_tracklist_queryset(self, episode):
|
def get_tracklist_queryset(self, episode):
|
||||||
return Track.objects.filter(episode=episode).order_by("position")
|
return Track.objects.filter(episode=episode).order_by("position")
|
||||||
|
|
||||||
|
|
|
@ -24,8 +24,8 @@
|
||||||
</a-modal>
|
</a-modal>
|
||||||
|
|
||||||
<slot name="top" :set="set" :items="set.items"></slot>
|
<slot name="top" :set="set" :items="set.items"></slot>
|
||||||
<a-rows :set="set" :columns="columns"
|
<a-rows :set="set" :columns="allColumns"
|
||||||
:labels="initData.fields" :allow-create="true" :orderable="true"
|
:labels="allColumnsLabels" :allow-create="true" :orderable="true"
|
||||||
@move="listItemMove">
|
@move="listItemMove">
|
||||||
<template v-for="[name,slot] of rowsSlots" :key="slot"
|
<template v-for="[name,slot] of rowsSlots" :key="slot"
|
||||||
v-slot:[slot]="data">
|
v-slot:[slot]="data">
|
||||||
|
@ -49,7 +49,8 @@
|
||||||
:title="labels.add_sound"
|
:title="labels.add_sound"
|
||||||
:aria-label="labels.add_sound"
|
:aria-label="labels.add_sound"
|
||||||
>
|
>
|
||||||
<span class="icon"><i class="fa fa-plus"/></span>
|
<span class="icon">
|
||||||
|
<i class="fa fa-plus"/></span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -75,6 +76,7 @@ export default {
|
||||||
settingsUrl: String,
|
settingsUrl: String,
|
||||||
soundListUrl: String,
|
soundListUrl: String,
|
||||||
soundUploadUrl: String,
|
soundUploadUrl: String,
|
||||||
|
player: Object,
|
||||||
columns: {
|
columns: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => ['name', "type", 'is_public', 'is_downloadable']
|
default: () => ['name', "type", 'is_public', 'is_downloadable']
|
||||||
|
@ -88,6 +90,18 @@ export default {
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
|
player_() {
|
||||||
|
return this.player || window.aircox.player
|
||||||
|
},
|
||||||
|
|
||||||
|
allColumns() {
|
||||||
|
return [...this.columns, "delete"]
|
||||||
|
},
|
||||||
|
|
||||||
|
allColumnsLabels() {
|
||||||
|
return {...this.labels, ...this.initData.fields}
|
||||||
|
},
|
||||||
|
|
||||||
items() {
|
items() {
|
||||||
return this.set.items
|
return this.set.items
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue
Block a user