You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.6 KiB
40 lines
1.6 KiB
# -*- coding: utf-8 -*-
|
|
from models import Transaction, TransactionType, VirtualTransaction
|
|
from django.contrib import admin
|
|
|
|
class TransactionAdmin(admin.ModelAdmin):
|
|
list_filter = ('transactionType','checked','user')
|
|
actions = ['really_delete_selected']
|
|
list_display = ('user', 'transactionType', 'amount', 'dateTime', 'checked')
|
|
list_display_links = ('user', 'transactionType')
|
|
search_fields = ['user__username','user__first_name','user__last_name']
|
|
date_hierarchy = 'dateTime'
|
|
ordering = ['-dateTime']
|
|
|
|
def get_actions(self, request):
|
|
actions = super(TransactionAdmin, self).get_actions(request)
|
|
del actions['delete_selected']
|
|
return actions
|
|
# FIXME: Can we instead of replacing the whole page just
|
|
# hook the release process? Also - make this nicer
|
|
# in terms of localization/naming foo
|
|
def really_delete_selected(self, request, queryset):
|
|
for obj in queryset:
|
|
obj.delete()
|
|
num = queryset.count()
|
|
message = "%s Transaktion%s" % (num, (num != 1 and "en" or ""))
|
|
self.message_user(request, u"Erfolgreich %s gelöscht." % message)
|
|
really_delete_selected.short_description = u"Ausgewählte Transaktion(en) löschen"
|
|
|
|
class VirtualTransactionAdmin(admin.ModelAdmin):
|
|
list_display = ('user','recipient','amount','dateTime','comment')
|
|
list_display_links = ('user','recipient')
|
|
list_filter = ('user','recipient')
|
|
search_fields = ['user__username','recipient__username','comment']
|
|
date_hierarchy = 'dateTime'
|
|
ordering = ['-dateTime']
|
|
|
|
admin.site.register(Transaction, TransactionAdmin)
|
|
admin.site.register(TransactionType)
|
|
admin.site.register(VirtualTransaction, VirtualTransactionAdmin)
|