diff options
Diffstat (limited to 'app/lib/upload/admin.py')
-rw-r--r-- | app/lib/upload/admin.py | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/app/lib/upload/admin.py b/app/lib/upload/admin.py new file mode 100644 index 0000000..9d8a2b2 --- /dev/null +++ b/app/lib/upload/admin.py @@ -0,0 +1,50 @@ +from django.contrib import admin +from django.utils.translation import ugettext as _ +from django.http import Http404, HttpResponse, HttpResponseRedirect +from django.utils.encoding import force_unicode +from django.utils.html import escape +from upload.models import FileUpload +from django.conf import settings + + +class UploadAdmin(admin.ModelAdmin): + list_display = ('title','upload_date','upload', 'content_type') + search_fields = ['title',] + list_filter = ('upload_date', 'content_type') + fieldsets = ( + (None, {'fields': ('upload','title','description')}), + ) + class Media: + js = ['%s/admin/jquery/jquery-1.3.2.min.js' % (settings.MEDIA_URL), '%s/admin/custom/photo-edit.js' % (settings.MEDIA_URL)] + + def response_change(self, request, obj): + """ + Determines the HttpResponse for the change_view stage. + """ + opts = obj._meta + pk_value = obj._get_pk_val() + + msg = _('The %(name)s "%(obj)s" was changed successfully.') % {'name': force_unicode(opts.verbose_name), 'obj': force_unicode(obj)} + if request.POST.has_key("_continue"): + self.message_user(request, msg + ' ' + _("You may edit it again below.")) + if request.REQUEST.has_key('_popup'): + return HttpResponseRedirect(request.path + "?_popup=1") + else: + return HttpResponseRedirect(request.path) + elif request.POST.has_key("_saveasnew"): + msg = _('The %(name)s "%(obj)s" was added successfully. You may edit it again below.') % {'name': force_unicode(opts.verbose_name), 'obj': obj} + self.message_user(request, msg) + return HttpResponseRedirect("../%s/" % pk_value) + elif request.POST.has_key("_addanother"): + self.message_user(request, msg + ' ' + (_("You may add another %s below.") % force_unicode(opts.verbose_name))) + return HttpResponseRedirect("../add/") + elif request.POST.has_key("_popup"): + return HttpResponse('<script type="text/javascript">opener.dismissAddAnotherPopup(window, "%s", "%s");</script>' % \ + # escape() calls force_unicode. + (escape(pk_value), escape(obj))) + else: + self.message_user(request, msg) + return HttpResponseRedirect("../") + + +admin.site.register(FileUpload, UploadAdmin)
\ No newline at end of file |