admin.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. from django.contrib import admin
  2. from coin.offers.models import Offer, Service, OfferSubscription
  3. from coin.offers.offersubscription_filter import\
  4. OfferSubscriptionTerminationFilter,\
  5. OfferSubscriptionCommitmentFilter
  6. from coin.resources.models import IPSubnet
  7. import autocomplete_light
  8. class IPSubnetInline(admin.TabularInline):
  9. model = IPSubnet
  10. extra = 0
  11. class ServiceAdmin(admin.ModelAdmin):
  12. search_fields = ['name']
  13. class OfferAdmin(admin.ModelAdmin):
  14. list_display = ('service', 'name', 'billing_period', 'period_fees',
  15. 'initial_fees')
  16. list_display_links = ('name',)
  17. search_fields = ['name']
  18. class OfferSubscriptionAdmin(admin.ModelAdmin):
  19. list_display = ('member', 'offer', 'subscription_date', 'commitment',
  20. 'resign_date')
  21. list_display_links = ('member','offer')
  22. list_filter = ( OfferSubscriptionTerminationFilter,
  23. OfferSubscriptionCommitmentFilter,
  24. 'member', 'offer')
  25. search_fields = ['member__first_name', 'member__last_name', 'member__email']
  26. fields = (
  27. 'member',
  28. 'offer',
  29. 'subscription_date',
  30. 'commitment',
  31. 'resign_date'
  32. )
  33. form = autocomplete_light.modelform_factory(OfferSubscription)
  34. inlines = [ IPSubnetInline ]
  35. admin.site.register(Service, ServiceAdmin)
  36. admin.site.register(Offer, OfferAdmin)
  37. admin.site.register(OfferSubscription, OfferSubscriptionAdmin)