From e7b24f518932cafe243d8504f0e9f03c8bf400fe Mon Sep 17 00:00:00 2001 From: yomguy Date: Tue, 10 May 2011 09:43:42 +0200 Subject: [PATCH] fix collection title in list, give a inline formset for item performances edit --- telemeta/models/query.py | 14 -------- .../telemeta_default/inc/collection_list.html | 2 +- .../mediaitem_performances_edit.html | 1 + telemeta/web/base.py | 34 +++++++++---------- 4 files changed, 18 insertions(+), 33 deletions(-) diff --git a/telemeta/models/query.py b/telemeta/models/query.py index 450b88ac..0324abff 100644 --- a/telemeta/models/query.py +++ b/telemeta/models/query.py @@ -394,17 +394,3 @@ class LocationManager(CoreManager): return self.get_query_set().flatname_map(*args, **kwargs) flatname_map.__doc__ = LocationQuerySet.flatname_map.__doc__ - -#class MediaItemPerformanceQuerySet(CoreQuerySet): -# -# def by_item(self, item): -# return self.filter(item=item) -# -# -#class MediaItemPerformanceManager(CoreManager): -# -# def get_query_set(self): -# "Return performance query set" -# return MediaItemPerformanceQuerySet(self.model) - - diff --git a/telemeta/templates/telemeta_default/inc/collection_list.html b/telemeta/templates/telemeta_default/inc/collection_list.html index a21474c7..212c3c3d 100644 --- a/telemeta/templates/telemeta_default/inc/collection_list.html +++ b/telemeta/templates/telemeta_default/inc/collection_list.html @@ -20,7 +20,7 @@ {% for collection in collections %} - {{ collection }} + {{ collection.title }} {{ collection.code|default:collection.old_code }} diff --git a/telemeta/templates/telemeta_default/mediaitem_performances_edit.html b/telemeta/templates/telemeta_default/mediaitem_performances_edit.html index abb51143..b21b2fc6 100644 --- a/telemeta/templates/telemeta_default/mediaitem_performances_edit.html +++ b/telemeta/templates/telemeta_default/mediaitem_performances_edit.html @@ -35,6 +35,7 @@ {% endfor %} +
{% endfor %}
diff --git a/telemeta/web/base.py b/telemeta/web/base.py index 15689cc1..bad7e2bd 100644 --- a/telemeta/web/base.py +++ b/telemeta/web/base.py @@ -55,7 +55,7 @@ from django.contrib import auth from django.contrib import messages from django.contrib.auth.decorators import login_required, permission_required from django.core.context_processors import csrf -from django.forms.models import modelformset_factory +from django.forms.models import modelformset_factory, inlineformset_factory from django.contrib.auth.models import User from django.utils.translation import ugettext from django.contrib.auth.forms import UserChangeForm @@ -350,22 +350,6 @@ class WebView(object): 'audio_export_enabled': getattr(settings, 'TELEMETA_DOWNLOAD_ENABLED', True), "form": form, 'previous' : previous, 'next' : next, }) - - @method_decorator(permission_required('telemeta.change_mediaitem')) - def item_performances_edit(self, request, public_id, template): - item = MediaItem.objects.get(public_id=public_id) - PerformanceFormSet = modelformset_factory(MediaItemPerformance) - queryset = MediaItemPerformance.objects.filter(media_item=item) - if request.method == 'POST': - formset = PerformanceFormSet(data=request.POST, queryset=queryset) - if formset.is_valid(): - formset.save() - return HttpResponseRedirect('/items/'+public_id) - else: - formset = PerformanceFormSet(queryset=queryset) - return render(request, template, - {'item': item, 'formset': formset,}) - @method_decorator(permission_required('telemeta.add_mediaitem')) def item_add(self, request, template='telemeta/mediaitem_add.html'): @@ -1143,4 +1127,18 @@ class WebView(object): profile_form = UserProfileForm(instance=profile, prefix='profile') forms = [user_form, profile_form] return render(request, template, {'forms': forms, 'usr': user, 'user_hidden_fields': user_hidden_fields}) - + + @method_decorator(permission_required('telemeta.change_mediaitem')) + def item_performances_edit(self, request, public_id, template): + item = MediaItem.objects.get(public_id=public_id) + PerformanceFormSet = inlineformset_factory(MediaItem, MediaItemPerformance) + if request.method == 'POST': + formset = PerformanceFormSet(data=request.POST, instance=item) + if formset.is_valid(): + formset.save() + return HttpResponseRedirect('/items/'+public_id) + else: + formset = PerformanceFormSet(instance=item) + return render(request, template, + {'item': item, 'formset': formset,}) + -- 2.39.5