Mercurial > public > sg101
view gpp/potd/admin.py @ 515:ae89ba801e8b
For #194, convert the POTD management command to a celery task.
Refactored to put the logic for the command into a function, and the command simply calls this function. The task can also just call this function. Added some basic tests for the new function.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 14 Dec 2011 02:41:15 +0000 |
parents | 3c951521e0ec |
children | 4021ea1045f7 |
line wrap: on
line source
""" This file contains the admin definitions for the POTD application. """ from django.contrib import admin from django.conf import settings from potd.models import Photo from potd.models import Current from potd.models import Sequence IMG_TAG = '<img src="%s" alt="thumbnail" />' class PhotoAdmin(admin.ModelAdmin): fields = ('photo', 'caption', 'description', 'user', 'potd_count') raw_id_fields = ('user', ) list_display = ('__unicode__', 'thumbnail') actions = ('regen_thumbnail', ) class Media: js = settings.GPP_THIRD_PARTY_JS['tiny_mce'] def thumbnail(self, obj): return IMG_TAG % obj.thumb.url thumbnail.allow_tags = True def regen_thumbnail(self, request, qs): """ Regenerates the thumbnail for the selected photos. """ for photo in qs: photo.generate_thumb() photo.save() regen_thumbnail.short_description = "Regenerate thumbs for selected photos" class CurrentAdmin(admin.ModelAdmin): list_display = ('__unicode__', 'thumbnail') raw_id_fields = ('potd', ) def thumbnail(self, obj): return IMG_TAG % obj.potd.thumb.url thumbnail.allow_tags = True admin.site.register(Photo, PhotoAdmin) admin.site.register(Current, CurrentAdmin) admin.site.register(Sequence)