Mercurial > public > sg101
diff gpp/weblinks/admin.py @ 204:b4305e18d3af
Resolve ticket #74. Add user badges. Some extra credit was done here: also refactored how pending news, links, and downloads are handled.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 01 May 2010 21:53:59 +0000 |
parents | fa7d82bfb100 |
children | 7e8d2dda99e3 |
line wrap: on
line diff
--- a/gpp/weblinks/admin.py Wed Apr 28 03:00:31 2010 +0000 +++ b/gpp/weblinks/admin.py Sat May 01 21:53:59 2010 +0000 @@ -1,7 +1,9 @@ """This file contains the automatic admin site definitions for the weblinks models""" +import datetime from django.contrib import admin from weblinks.models import Category +from weblinks.models import PendingLink from weblinks.models import Link from weblinks.models import FlaggedLink @@ -11,6 +13,27 @@ readonly_fields = ('count', ) +class PendingLinkAdmin(admin.ModelAdmin): + list_display = ('title', 'url', 'user', 'category', 'date_added') + raw_id_fields = ('user', ) + actions = ('approve_links', ) + + def approve_links(self, request, qs): + for pending_link in qs: + link = Link(category=pending_link.category, + title=pending_link.title, + url=pending_link.url, + description=pending_link.description, + user=pending_link.user, + date_added=datetime.datetime.now(), + hits=0, + is_public=True) + link.save() + pending_link.delete() + + approve_links.short_description = "Approve selected links" + + class LinkAdmin(admin.ModelAdmin): list_display = ('title', 'url', 'category', 'date_added', 'hits', 'is_public') list_filter = ('date_added', 'is_public', 'category') @@ -27,5 +50,6 @@ raw_id_fields = ('user', ) admin.site.register(Category, CategoryAdmin) +admin.site.register(PendingLink, PendingLinkAdmin) admin.site.register(Link, LinkAdmin) admin.site.register(FlaggedLink, FlaggedLinkAdmin)